随分前からある構文ですが、私は最近気づいたので改めて書きます。
Swiftを書いていると時折こういうコードを書く必要が出てきます。
var count = 0
for i in 0..<n{
if condition(i){
count += 1
}
}
for
の直下にif
があり、かつelse
がない場合です。
でもwhere
を使えばこう書けます。
var count = 0
for i in 0..<n where condition(i){
count += 1
}
意味は簡単で、where
節が条件を指定しています。こう書くことでネストが1つ減るだけでなく、考えている条件もわかりやすくなります。
最適化のおかげでパフォーマンス上の影響は全くないので、積極的に使っていくべきだと思います。