【Java】break と continue の違いをやさしく解説|ループ制御の基本と注意点まとめ

Java入門・実践
スポンサーリンク
スポンサーリンク

はじめに

Java のループ処理で欠かせないのが
breakcontinue

  • break:ループを抜ける
  • continue:その回の処理をスキップする

というイメージはあるものの、
実際の挙動やネスト時の動きは意外と誤解されがちです。

この記事では、やさしく・実務寄りに
break / continue の挙動を整理していきます。


break の基本:ループを抜ける

Java
for (int i = 0; i < 5; i++) {
    if (i == 3) {
        break;
    }
    System.out.println(i);
}

出力:

0
1
2

i が 3 になった時点で
ループ全体を終了 します。

break が効く範囲

  • 最も内側のループだけ を抜ける
  • 外側のループには影響しない

例:ネストしたループ

Java
for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
        if (j == 1) break;
        System.out.println(i + "-" + j);
    }
}

出力:

0-0
1-0
2-0

内側のループだけ break され、外側は続く。

switch 文でも break は使われる

Java
switch (n) {
    case 1:
        System.out.println("One");
        break;
    case 2:
        System.out.println("Two");
        break;
}

break がないと fall-through するため、
switch でも break は重要。


continue の基本:その回だけスキップ

Java
for (int i = 0; i < 5; i++) {
    if (i == 3) {
        continue;
    }
    System.out.println(i);
}

出力:

0
1
2
4

i が 3 のときだけ
本体をスキップして次のループへ

continue の挙動(for 文の場合)

本体をスキップ → 更新式 → 条件式 → 次のループへ

更新式は実行される点がポイント。

while / do-while の continue は少し違う

while の場合

continue → 条件式へ戻る

do-while の場合

continue → 更新処理(本体の末尾) → 条件式

ループの種類によって戻り先が違うため、
continue の使い方には注意が必要。


break / continue の違いまとめ

構文動作影響範囲
breakループを抜ける最も内側のループのみ
continueその回の処理をスキップループは継続

よくあるミスと注意点

ミス①:break が外側のループまで抜けると思ってしまう

Java
break; // 内側だけ

外側まで抜けたい場合は ラベル付き break を使う。

Java
outer:
for (...) {
    for (...) {
        break outer; // 外側のループを抜ける
    }
}

ミス②:continue で更新式が飛ばされると思う

for 文では continue しても更新式は実行される。

Java
for (int i = 0; i < 5; i++) {
    continue; // i++ は実行される
}

ミス③:switch の break を忘れて fall-through する

Java
case 1:
    ...
case 2:
    ... // 意図せず実行される

switch では break が必須。


実務での使い分け

break が向いている場面

  • 条件を満たしたらループを終了したい
  • 検索処理(見つかったら終わり)
  • switch 文の制御

continue が向いている場面

  • 特定の条件だけスキップしたい
  • 不要なデータを飛ばして処理したい
  • ネストを浅くしたい(早期スキップ)

まとめ

break

  • ループを抜ける
  • 内側のループだけ
  • switch でも使う

continue

  • その回だけスキップ
  • ループは継続
  • for 文では更新式が実行される

decopon
decopon

break / continue は、 「抜ける」か「スキップ」かの違いを理解するだけで 一気に読みやすく、安全に使えるようになります。特にネストしたループでは挙動が複雑になりがちなので、 今回のまとめが読者の助けになるはずです。あなたの学びが、次のステップにつながりますように。

moco
moco

break は“ここで終わり”、
continue は“今回はパス”。
このイメージで読むと、ループがぐっとわかりやすくなるよ。

コメント

タイトルとURLをコピーしました