Javaのbreak文の使い方を現役エンジニアが解説【初心者向け】

初心者向けにJavaのbreak文の使い方について解説しています。最初に、for文とwhile文の基本を説明します。次にbreakを使ったループ中断の書き方、実行した場合の処理の流れ、continue文との違いについて見ていきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Javaのbreak文の使い方について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。for文やwhile文についてもかんたんなおさらいをするので、Java初心者の方でも理解できると思うので、手を動かしながら読んでみてください。

Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Java講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

break文の使い方について詳しく説明していくね!

大石ゆかり

お願いします!

 

break文とは

まず、break文について説明する前に、for文とwhile文についてかんたんにおさらいします。for文は、条件によって処理を変えたい場合に使われる構文で、

for(初期化式; 条件式; 変化式){処理内容}

for文は変数を初期化して、処理内容を一回終えると変数を変化させて、その変数が条件を満たす場合はまたおなじ処理を繰り返す、というように何らかの変数を使ってループ処理を記述します。

for文は次のようにして、特定の回数分だけ処理を繰り返したいときなどに使われます。

for (i=0; i<10; ++i){処理内容}

この場合には、iが1回処理を終えるごとに1ずつ増えていくので、合計10回同じ処理を繰り返すことになります。

一方、while文は次のように記述します。

while(条件式){処理内容}

見てわかるように、while文の場合は、for文の場合とは異なり、必ずしも変数を使う必要はありません。while文は、次のようにTrueを条件式の部分に持ってくることで、ずっと同じ処理を繰り返したい場合などによく使われます。

while (True){処理内容}

これらのfor文やwhile文の記述方法では、ある特定の条件の場合に処理を中断することは難しいです。

しかし実際のプログラミングでは、何らかのエラーや条件に当てはまるときには、処理を中断したい場合があります。そのようなときに活躍するのがbreak文という構文です。

break文は、for文やwhile文中の好きな場所に置くことができて、if文と組み合わせることで、条件に応じて処理を中断することができます。

 

break文の使い方

break文の具体的な記述方法は至ってシンプルで、for文やwhile文の好きな位置に記述するだけです。while文では、if文と組み合わせる場合には次のように記述します。

while(条件式){

        if(whileループを抜ける場合の条件式) break;

        処理内容

}

この構文で、while文の条件式を次のようにTrueにしておくことで、何かが発生したときだけループ処理を中断することができます。

while(True){

        if(whileループを抜ける場合の条件式) break;

        処理内容

}

 

[PR] Javaで挫折しない学習方法を動画で公開中

for文をbreak文で抜ける方法

一重のfor文の場合には、while文と使い方はほとんど同じで、

for(初期化式; 条件式; 変化式){

        if(forループを抜ける場合の条件式) break;

        処理内容

}

のようにして記述します。

 

二重ループをbreak文で抜ける方法

一重のループ処理の場合はbreak文の使い方がwhile文と同じでしたが、for文を入れ子構造にする二重ループや、それいじょうの多重ループではbreak文の扱いにすこし注意が必要です。

例えば、次のように1つ目のfor文の中の2つ目のfor文でbreak文を使うと、単純に2つ目のfor文を抜けるだけで、全体としてforループは止まりません。

for(初期化式; 条件式; 変化式){

        for(初期化式; 条件式; 変化式){

                if(forループを抜ける場合の条件式) break;

                処理内容

        }

}

そこで、入れ子構造になっている多重のfor文を抜けるために、「ラベル付きfor文」というものを使います。これは、for文に「ラベル」(「名前」のことだと思ってもらって大丈夫です)をつけて、break文を使う際にfor文を指定するという構文です。

次のように記述します。

ラベル: for(初期化式; 条件式; 変化式){        //for文の名前を指定

        for(初期化式; 条件式; 変化式){

                if(forループを抜ける場合の条件式) break ラベル;        //抜けるfor文を指定

                処理内容

        }

}

ラベルの部分は自分の好きな名前で構いません。例えば、loop1という名前をつけるとすると、

loop1: for(初期化式; 条件式; 変化式){        //for文の名前をloop1に指定

        for(初期化式; 条件式; 変化式){

                if(forループを抜ける場合の条件式) break loop1;        //抜けるfor文をloop1に指定

                処理内容

        }

}

のようになります。

 

break文とcontinue文の違い

break文と似たような構文にcontinue文があります。continue文の場合は、for文の場合とは異なり、ループ処理を中断するのではなく、1回だけスキップします。continue文の使い方はbreak文と同じように、while文の場合は、

while(条件式){

        if(whileループを1回スキップする場合の条件式) continue;

        処理内容

}

for文の場合は、

for(初期化式; 条件式; 変化式){

        if(forループを1回スキップする場合の条件式) continue;

        処理内容

}

のように記述します。処理をやめたい場合はbreak文を、処理を一回だけスキップしたい場合はcontinue文を使うことに注意してください。

 

以上、Javaにおけるbreak文の使い方について解説しました。break文を使えば、Javaでできることの幅が広がるので覚えておくと良いでしょう。

 

監修してくれたメンター

小倉翔悟 (おぐらしょうご)

AIプログラミングを使って開発を行う大学3年生。プログラミング歴は約3年。Pythonは割と好きな方。JavaもAndroid開発で触れていたりする。

大学では物理学を勉強中。好きな物理理論は一般相対性理論らしい。

意外と動物が好きだったり、、、。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、初心者でも最短4週間で、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

 

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。