実行文の中断 とは
break文やcontinue文を用いることで、実行文を中断することができます。
break文は、繰り返し文全体を終了させます。
continue文は、現在の処理のみを中断し、後続の処理を継続します。
また、break文やcontinue文は、
switch文と同様にラベルを使用することで制御対象を指定できます。
break文
break文は実行文を中断すると同時に、繰り返し文全体も終了させます。
break文を使うタイミングとしては、
これ以上繰り返しを行う必要がなくなったタイミングです。
例えば、配列の中に「3」が含まれているか検査するプログラミングがあったとします。
3が見つかった時点で繰り返し処理を中断するという機能になっています。
let array = [1, 2, 3, 4, 5]
for item in array {
if item == 3 {
print("3を検知しました。")
break
}
print(item)
}
実行結果
1
2
3を検知しました。
結果を見るとわかるように、
3を検知した後にbreakが実行されそれ以降の繰り返し処理が行われていません。
continue文
continue文は、実行文を中断した後、後続の繰り返しを継続します。
使い道としては、特定の場合にだけ処理をスキップする場合などに使えます。
例として、偶数の値は配列に格納し、奇数の値は出力するコードを書いてみました。
let array = [1, 2, 3, 4, 5]
var arrayEven: [Int] = []
for item in array {
if item % 2 == 0 {
arrayEven.append(item)
continue
}
print("奇数値 \(item) は格納しません。")
}
print(arrayEven)
実行結果
奇数値 1 は格納しません。
奇数値 3 は格納しません。
奇数値 5 は格納しません。
[2, 4]
break文とはことなり、continue後も後続の繰り返し処理は実行されております。
continue文が実行された場合は、それ以降の実行文が実行されないため、
print()関数は実行されません。
ラベルに関してはswitch文のラベルと同じなので説明は省きます。
気になる方はswitch文の記事をご覧ください!
以上、最後までご覧いただきありがとうございました。