Break
CoddyのSwiftジャーニー「基礎」セクションの一部 — レッスン 45/86。
ループがすべての反復を完了する前に、途中で終了させたい場合があります。break 文は、即座にループを停止し、その後のコードから処理を続行します。
for number in 1...10 {
if number == 5 {
break
}
print(number)
}
// 出力: 1, 2, 3, 4number が 5 に達すると、break 文が実行され、ループは完全に停止します。break が print 文に到達する前に終了するため、5 自体は出力されないことに注意してください。
break文は、すべてのループ型で動作します。特定の値を検索するwhileループの例を次に示します:
var count = 0
while true {
count += 1
if count == 3 {
break
}
}
print(count) // 出力: 3このパターンは、何かを検索している際に、見つかった時点で処理を終了したい場合に便利です。これにより、不必要な反復処理を避けることができます。
チャレンジ
簡単limit と divisor を受け取り、その除数(divisor)で割り切れる最初の数(1から開始)を返す関数 findFirstMultiple を作成してください。
ループを使用して、1から limit までの数値を順番に確認します。除数で割り切れる数値が見つかったら、break を使用して直ちにループを抜け、その数値を返します。
ロジック:
- 1から
limitまでの数値をループで回す - 現在の数値が
divisorで割り切れるか(余りが0か)を確認する - 見つかった場合は、ループを抜けてその数値を返す
- 制限内に倍数が見つからない場合は、
-1を返す
パラメータ:
limit(Int): 検索の上限(その数値を含む)divisor(Int): 割り切れるかを確認する数値
戻り値: 除数で割り切れる最初の数値。見つからない場合は -1 (Int)
例えば、limit が 10 で divisor が 3 の場合、関数は 3(3で割り切れる最初の数値)を返します。
チートシート
break文は、ループを即座に停止し、その後のコードから処理を続行します。
for number in 1...10 {
if number == 5 {
break
}
print(number)
}
// 出力: 1, 2, 3, 4breakが実行されると、ループは完全に停止します。ブレークをトリガーした値は、ループ内の後続のステートメントによって処理されません。
break文は、whileループを含むすべてのループタイプで使用できます。
var count = 0
while true {
count += 1
if count == 3 {
break
}
}
print(count) // 出力: 3このパターンは、条件が満たされたらすぐに検索を停止し、不要な反復を避けるのに役立ちます。
自分で試してみよう
func findFirstMultiple(limit: Int, divisor: Int) -> Int {
// ここにコードを記述してください
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。