前回は 集合型 について書きました。
今回は break文 と continue文 について書いていこうと思います。
break文
break文 とは
break文 とは、for文 や switch文 などのループ処理を中断する事ができる構文です。
基本的には if文 などと併用して条件を付けて使います。
ループ中に、もし指定した条件を満たしたらループを中断して、次の処理に移りたい時などに使います。
for文 についてはこちらの記事で紹介しています。
if文 についてはこちらの記事で紹介しています。
break文 の使い方
使い方は break と書くだけです。
break
break文 を使った例
let slot = [145, 214, 405, 315, 777, 343]
for i in 0 ..< 20 {
let stop = slot.randomElement()
print("\(i)回転目 : \(stop ?? 123)")
if stop == 777 {
print("大当たり!")
break
}
}
//実行結果
/*
0回転目 : 315
1回転目 : 315
2回転目 : 343
3回転目 : 315
4回転目 : 145
5回転目 : 145
6回転目 : 315
7回転目 : 214
8回転目 : 405
9回転目 : 777
大当たり!
*/
配列slot に 3 桁の整数を要素として複数代入しています。
for文 は最大 20 回ループするようにしました。
処理は 配列slot の要素をランダムに取り出して、取り出した値を 定数stop に代入します。
print( ) で何回目のループなのかと 定数stop に代入された値を出力します。
if文 で、もし 定数stop に代入された値が 777 だったら、print( ) で ”大当たり!” と出力して、break で中断します。
for文 は 20 回としていますが、20 回ループする前に 777 が選択されたら途中でも for文 を中断します。
また、777 が選択されなければ 20 回ループして for文 を中断します。
※ randomElement( ) メソッドはコレクション型の要素をランダムに返すメソッドです。返ってくる値は Optional型 なのでアンラップして print( ) で出力しています。
Optional型 についてはこちらの記事で紹介しています。
continue文
continue文とは
continue文 とは、continue と書いた後の処理をスキップする事ができる構文です。
break文 はループ自体を中断して次の処理に移行しますが、continue文 は次回のループ処理に移行する。という違いがあります。
break文 同様 continue文 も条件を付けて使う場合が多いので、if文 などと併用することが多いと思います。
continue文 の使い方
使い方は continue と書くだけです。
continue
continue文 を使った例
上の break文 のコード例を流用
let slot = [145, 214, 405, 315, 777, 343]
for i in 0 ..< 20 {
let stop = slot.randomElement()
if stop == 777 {
print("jackpot!")
continue
}
print("\(i)回転目 : \(stop ?? 123)")
}
//実行結果
/*
0回転目 : 214
1回転目 : 405
2回転目 : 405
3回転目 : 315
4回転目 : 214
jackpot!
6回転目 : 214
7回転目 : 315
8回転目 : 405
9回転目 : 315
10回転目 : 343
11回転目 : 343
12回転目 : 343
13回転目 : 405
jackpot!
15回転目 : 145
16回転目 : 405
17回転目 : 343
18回転目 : 145
19回転目 : 343
*/
for文 は 20 回ループ、処理は 配列slot の要素をランダムに取り出して、取り出した値を 定数stop に代入します。
もし 定数stop に代入された値が 777 だったら、jackpot! と出力し continue して、一番下の print( ) はスキップして次回のループに移行します。
777 以外であれば if文 の条件から外れているので、if文 はスキップされて 一番下の print( ) で何回目のループなのかと 定数stop に代入された値を出力します。
つまり、777 だった時のみ continue して次回のループに、それ以外は continue されずに回転数と値を出力する、という流れになります。
break文 は break と書かれた後 for文 自体を中断してループを抜けてしまいますが、
continue文は continue と書かれた後の処理をスキップするだけなので、for文 は指定通り20 回ループされています。
以上 break文 と continue文 についてでした。
次回は guard文 について書いていこうと思います。
実行環境
version |
---|
Xcode 14.2 (14C18) |
Swift 5.2.4 |
公式ドキュメント
https://docs.swift.org/swift-book/documentation/the-swift-programming-language/