繰り返し文の定番for文の書き方。
Swiftでfor文を使う
1 2 3 4 |
for var i = 0; i < 4; i += 1 { print(i) } // 0 1 2 3 |
いわゆる他言語でもよく見る定番系だが、この形はSwift3からは禁止になったよ。
Swiftでfor in文を使う
1 2 3 4 |
for i in 0 ..< 4 { print(i) } // 0 1 2 3 |
こちらのほうが直感的に、簡潔に書けるので、for in文をなるべく使うようにしよう。
(もちろんこれ以外にも方法はたくさんあるので、二者択一の場合の話とする)
for in文をbreakで中断させる
1 2 3 4 5 6 7 |
for i in 0 ..< 4 { guard i == 0 else { break } print(i) } // 0 |
breakの場合、iが0のときのみ条件をみたすので、ループの2回目(iが1のとき)breakでfor文から抜け出すことができる。
for in文をcontinueでスキップさせる
1 2 3 4 5 6 7 |
for i in 0 ..< 4 { guard i >= 2 else { continue } print(i) } // 2 3 |
continueの場合、for in文をぬけ出すのではなく、次のループにスキップさせることができる。
guardの条件が2以上なので、最初の0で条件を満たさないが、0,1の場合をスキップして2からはprintを行うことができる。
今回のようにfor文とguard(if)の同時使いはよく見る形なので(良いかは別の話)、なるべく覚えておこう。
配列やdictionaryでの使い方が知りたい場合は、応用編の記事もチェックしてみよう。