このコードを実行すると、print("it is greater than zero")
実行されるだけですが、true の場合が 2 つあります。fallthrough
キーワードを使用しようとしましたが、false であっても次のケースブロックを実行します。
これにより、別の質問が発生します。いつfallthrough
キーワードを使用する必要がありますか? 次のブロックを強制的に実行したい場合、コードを同じブロックに挿入しないのはなぜfallthrough
ですか?
以下の例で、true と評価されるすべてのケースを出力し、false と評価されるすべてのケースを除外する方法はありますか?
let number = 1
switch number {
case _ where number > 0:
print("it is greater than zero")
case _ where number < 2:
print("it is less than two")
case _ where number < 0:
print("it is less than zero")
default:
print("default")
}
回答ありがとうございます。