入力された数値の配列がありますInt
。
この配列をループして、各数値が奇数か偶数かを判断したいと思います。
Swiftで数値が奇数か偶数かを判断するにはどうすればよいですか?
Swift 5 では、この機能isMultiple(of:)
がBinaryInteger
プロトコルに追加されています。
let even = binaryInteger.isMultiple(of: 2)
let odd = !binaryInteger.isMultiple(of: 2)
この関数は%
奇数/偶数チェックの代わりに使用できます。
この機能は、Swift Evolution プロセスによって追加されました。
特に、isEven
とisOdd
が提案されましたが、同じレビューで受け入れられませんでした:
が追加されたことを考えると
isMultiple(of:)
、コア チームはそれを感じてisEven
おりisOdd
、isMultiple(of: 2)
.したがって、提案は修正して受け入れられます。
isMultiple(of:)
受け入れられますがisEven
、isOdd
拒否されます。
必要に応じて、これらのメソッドは拡張によって簡単に追加できます。
extension BinaryInteger {
var isEven: Bool { isMultiple(of: 2) }
var isOdd: Bool { !isEven }
}