为什么这个函数会在Swift中判断一个Integer的输入是奇数还是偶数?

Why does this function work to determined wether or not an input of an Integer is Odd or Even in Swift?

func isOdd(n: Int) -> Bool {
    if n % 2 == 1 {
        return true
    } else {
        return false
    }
}

所以这个功能基本上把我搞糊涂了。假设我调用了函数并输入 9

isOdd(in:9)

我知道 9 是奇数,但代码是如何工作的。如果我计算代码所暗示的 n(9)/2,则它等于 4.5。这个结果被检查为 2 个等号和 1 所暗示的。4.5 不等于 1 那么为什么它 return True.

模数除法,第一个整数除以第二个整数时提示 它 returns an int。所以 n % 2 returns 01 作为 int 提醒。 这就是您的功能起作用的原因。您可以将函数简化为:

func isOdd(n: Int) -> Bool { n % 2 != 0 }