2017.07.14

2025.02.19

Javaプログラミング

break

break文

break文は、for文while文などの繰り返し処理から強制的に抜けるための制御文です。

無限ループから抜ける時に使ったり、繰り返し処理の途中で処理を打ち切るときに使用します。また、switch文から抜ける際にも使用します。

一般的な書き方

以下は、for文無限ループからbreak文で抜ける書き方です。条件式が「true」でループを抜けます。

    for ( ; ; ) {
           :
        if ( 条件式 ) break;
           :
    }

以下は、while文無限ループからbreak文で抜ける書き方です。条件式が「true」でループを抜けます。

    while( true ) {
           :
        if ( 条件式 ) break;
           :
    }

以下は、switch文からbreak文で抜ける書き方です。

    switch ( 式 ) {
           case : 定数式
                     :
               break;

           default :
                    :
               break;
    }

以下は、for文の2重の無限ループの例です。break文内側のループに書かれているので、条件式が「true」で内側のループを抜けます。外側のループは抜けません。

    for ( ; ; ) {	// ← 外側のループ
        for ( ; ; ) {	// ← 内側のループ
               :
            if ( 条件式 ) break;
               :
        }
    }

以下は、for文の2重無限ループの例です。上の例に外側のループを抜けるbreak文を追加したものです。

    for ( ; ; ) {	// ← 外側のループ
        for ( ; ; ) {	// ← 内側のループ
               :
            if ( 条件式 ) break;	// ← 内側のループを抜けるbreak文
               :
        }
           :
        if ( 条件式 ) break;	// ← 外側のループを抜けるbreak文
           :
    }

または、

    for ( ; ; ) {	// ← 外側のループ
           :
        if ( 条件式 ) break;	// ← 外側のループを抜けるbreak文
           :
        for ( ; ; ) {	// ← 内側のループ
               :
            if ( 条件式 ) break;	// ← 内側のループを抜けるbreak文
               :
        }
    }

Javaソースコード - for文の無限ループ

ここからは、break文を使用したサンプルのJavaソースコードで使い方を解説していきます。以下がそのソースコードで、無限ループの中で、処理を10回だけ行った後にループを抜けるものです。

BreakSample.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
public class BreakSample {
	public static void main(String[] args) {
		// ループ回数を格納する変数
		int number;

		// 初期値を0
		number = 0;

		// 無限ループ
		for ( ; ; ) {
			++ number;

			// numberが10を超えたら
			// ループを抜ける
			if ( 10 < number ) break;

			// numberを表示
			System.out.println( number );
		}
		
	}
}

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis BreakSample.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac BreakSample.java

実行

C:\talavax\javasample>java BreakSample

実行結果

1
2
3
4
5
6
7
8
9
10

ここからは、このソースコードを上から順番に解説していきます。

001
public class BreakSample {

クラス名を、BreakSampleとしています。

002
	public static void main(String[] args) {

このmainメソッドからプログラムを実行します。

003
004
		// ループ回数を格納する変数
		int number;

ループ回数を格納するint型変数numberを宣言しています。

006
007
		// 初期値を0
		number = 0;

numberに0を代入しています。

009
010
		// 無限ループ
		for ( ; ; ) {

無限ループを作成しています。

011
			++ number;

numberに1を足しています。

013
014
015
			// numberが10を超えたら
			// ループを抜ける
			if ( 10 < number ) break;

numberが10を超えたらbreak文for文を抜けます。

017
018
			// numberを表示
			System.out.println( number );

numberの値を表示しています。

Javaソースコード - while文の無限ループ

while文で作った無限ループからbreak文で抜けるJavaソースコードです。処理を10回だけ行った後にループを抜けるものです。

BreakSample1.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
public class BreakSample1 {
	public static void main(String[] args) {
		// ループ回数を格納する変数
		int number;

		// 初期値を0
		number = 0;

		// 無限ループ
		while ( true ) {
			++ number;

			// numberが10を超えたら
			// ループを抜ける
			if ( 10 < number ) break;

			// numberを表示
			System.out.println( number );
		}
		
	}
}

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis BreakSample1.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac BreakSample1.java

実行

C:\talavax\javasample>java BreakSample1

実行結果

1
2
3
4
5
6
7
8
9
10

Javaソースコード - 2重の無限ループで作成した九九

for文2重ループ九九の表を生成するJavaソースコードです。

MultiTable9_7.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
public class MultiTable9_7 {
	public static void main( String[] args ) {
		// 九九の計算(書式指定、無限ループ版)

		// 変数の宣言
		int row;	// 行(縦方向)
		int col;	// 列(横方向)

		// 行方向の無限ループ			
		row = 0;
		for ( ; ; ) {
			// 行rowに1を足す
			++ row;

			// 行rowが9を超えたらループを抜ける
			if ( 9 < row ) break;

			// 列方向の無限ループ			
			col = 0;
			for ( ; ; ) {
				// 列colに1を足す
				++ col;

				// 列colが9を超えたらループを抜ける
				if ( 9 < col ) break;

				// 掛け算の結果を右詰め3桁で表示
				System.out.printf( "%3d", row * col  );
			}
			// 改行
			System.out.println();
		}
	}
}

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis MultiTable9_7.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac MultiTable9_7.java

実行

C:\talavax\javasample>java MultiTable9_7

実行結果

  1  2  3  4  5  6  7  8  9
  2  4  6  8 10 12 14 16 18
  3  6  9 12 15 18 21 24 27
  4  8 12 16 20 24 28 32 36
  5 10 15 20 25 30 35 40 45
  6 12 18 24 30 36 42 48 54
  7 14 21 28 35 42 49 56 63
  8 16 24 32 40 48 56 64 72
  9 18 27 36 45 54 63 72 81

breakに関するコンテンツ

「break」に関係があるコンテンツをまとめています。

関連コンテンツ

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

メソッドを抜けるときに使用するreturn文について説明しています。

2020.03.20

繰り返し処理を制御するための機能の1つである「continue」について詳しく解説しています。

2019.10.16

繰り返し処理を使ったJavaのソースコードサンプルを紹介しています。

2020.03.23

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

プログラミング、ITに関する用語をまとめています。

2022.10.17

Javaのmainメソッドで受け取るパラメータについて解説しています。

2017.09.26

mainメソッドで受け取るパラメータの数の取得の仕方について解説しています。

2019.05.14

条件式を判断して処理を分岐する方法を詳しく説明しています。

2023.03.20

繰り返し処理(ループ)から強制的に抜けかたについて解説しています。

2017.07.14

変数やクラスに格納されている値をコンソール出力する方法は?

2020.03.23

プログラムの最初に実行されるメソッドは?

2022.12.13

プログラミングで使う変数って何?

2020.03.23

Javaのプログラムを書いてみませんか?プログラムの書き方をくわしく説明しています。

2020.03.23

「Javaソースコード」から実行可能な「オブジェクトコード」に変換する方法をくわしく説明しています。

2020.03.23

処理を繰り返すために使用するwhile文について解説しています。

2016.01.26

繰り返し処理の作り方を解説しています。

2016.03.02

変数やクラスに格納されている値をフォーマとを指定してコンソール出力する方法は?

2021.08.04

Javaのプログラムを作ってみませんか?プログラミングに必要なものの用意から実行までを説明しています。

2020.03.23

Swingパッケージを使ってグラフィック表示を行う方法を解説しています。

2020.03.23

配列を使うJavaソースコードを多数紹介しています。

2021.05.18

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

三角形、台形、円などいろいろな図形の面積を計算するプログラムを紹介しています。詳しくは、記事をご覧ください。

2021.05.18

StringクラスとStringBuilderクラスを利用したプログラミングの仕方を紹介しています。

2016.12.16

Javaを使った簡単な応用プログラム(生年月日から年齢を計算プログラムなど)を紹介しています。

2022.07.07

日本で使われてきた伝統文様「和柄」について解説しています。

2022.07.27

処理を繰り返すために使用するfor文について解説しています。

2020.03.23

式の値によって処理を分岐する方法を詳しく解説しています。

2016.08.04

for文などのループ中に、さらにループがある多重ループについて解説しています。

2021.02.09

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

Javaプログラムの構成について解説しています。詳しくは、こちらをご覧ください。

2020.03.23

for文で変数名iがよく使われる理由について説明しています。興味のある方は是非。

2022.08.29

九九(くく)の表を作る方法を詳しく解説しています。ソースコード付きです。

2019.01.03

「ゆるゆるプログラム」のコンテンツを紹介しています。興味のある方はこの記事をご覧ください。

2020.03.23

与えられた整数の桁数を求めるプログラムの作り方を説明します。for文を使っています。

2023.04.23

連続で「じゃんけん」ができるプログラムの作り方をソースコードを使って詳しく説明しています。

2023.05.23

JavaのMath.sqrtメソッドを使わない平方根の計算方法を解説。ソースコードを使って詳しく解説しています。

2022.12.16

与えられた2つの自然数の最大公約数を地道に求めるJavaソースコードを紹介しています。

2020.03.23

与えられた2つの自然数の最小約数の掛け算を繰り返して最大公約数を求めるJavaソースコードを紹介しています。

2020.03.23

関数f(x)が与えられたときf(x)=0となるxを数値計算の反復によって求める方法を詳しく解説しています。

2019.05.22

数値微分を使ったニュートン法で平方根を計算する方法を紹介しています。興味のあるかたは是非ご覧ください。

2019.05.23

指定した個数の素数の出力するJavaソースコードを紹介しています。

2023.01.03

整数だけを使って平方根を計算する方法を説明しています。興味のある方は、記事をご覧ください。

2016.02.12

トランプゲームの1つポーカーの役を判定をプログラムを作成してみませんか?。興味のある方は、ご覧ください。

2020.08.27

素因数分解は、自然数を素数の積(掛け算)で表すことです。この記事では、素因数分解のJavaのソースコードを解説しています。

2022.08.25

ソート(並び替え)アルゴリズムの1つであるクイックソートについて詳しく解説しています。Javaのソースコード付きです。

2019.09.06

画像を180度回転する方法を解説しています。Javaのソースコード付きです。

2015.11.02

自動で神経衰弱を行うJavaのソースコードを紹介しています。興味のある方は、ご覧ください。

2021.03.31

広告