Java の break 文、ラベル

Javaのbreak文は、処理の途中でループを終了するために使用されます。Javaプログラムでループを終了するためには、break予約キーワードを使用します。

Javaのbreak

break文には2つの形式があります-ラベルなしラベル付きです。ほとんどの場合、break文は条件に基づいてループを終了するために使用されます。たとえば、終了コマンドに到達した場合に処理を中断します。ラベルなしのbreak文は、それを含むループを終了するために使用され、switch、for、while、do-whileループと組み合わせて使用することができます。

Javaのbreakの例

以下に、forループ、whileループ、do-whileループでのJavaのbreak文の使用例を示します。

package com.journaldev.util;

package com.journaldev.util;

public class JavaBreak {

	public static void main(String[] args) {
		String[] arr = { "A", "E", "I", "O", "U" };

		// forループを使用して配列内のOを検索する
		for (int len = 0; len < arr.length; len++) {
			if (arr[len].equals("O")) {
				System.out.println("Array contains 'O' at index: " + len);
				// 探しているものが見つかったため、ループを終了
				break;
			}
		}

		// whileループでのbreakの使用
		int len = 0;
		while (len < arr.length) {
			if (arr[len].equals("E")) {
				System.out.println("Array contains 'E' at index: " + len);
				// 探しているものが見つかったため、whileループを終了
				break;
			}
			len++;
		}

		len = 0;
		// do-whileループでのbreakの使用
		do {
			if (arr[len].equals("U")) {
				System.out.println("Array contains 'U' at index: " + len);
				// 探しているものが見つかったため、whileループを終了
				break;
			}
			len++;
		} while (len < arr.length);
	}

}

ブレークステートメントを削除すると、プログラムの出力には違いがありません。この例のような小さな反復では、パフォーマンス上の利点はほとんどありません。しかし、反復子のサイズが大きい場合、それは多くの処理時間を節約できます。

Javaのブレークラベル

ラベル付きのブレークステートメントは、外側のループを終了するために使用されます。このためには、ループにラベルを付ける必要があります。以下は、Javaのブレークラベルステートメントの使用例です。

package com.journaldev.util;

public class JavaBreakLabel {

	public static void main(String[] args) {
		int[][] arr = { { 1, 2 }, { 3, 4 }, { 9, 10 }, { 11, 12 } };
		boolean found = false;
		int row = 0;
		int col = 0;
		// 最初の10より大きい整数のインデックスを見つける
		searchint:

		for (row = 0; row < arr.length; row++) {
			for (col = 0; col < arr[row].length; col++) {
				if (arr[row][col] > 10) {
					found = true;
					// ブレークラベルを使用して外側のステートメントを終了する
					break searchint;
				}
			}
		}
		if (found)
			System.out.println("First int greater than 10 is found at index: [" + row + "," + col + "]");
	}

}

ブレークステートメントを使用してswitch-caseステートメントを抜けることもできます。これらについては、以下のビデオで学ぶことができます。https://www.youtube.com/watch?v=K148NXHD-UM 参考: Oracleのドキュメント

Source:
https://www.digitalocean.com/community/tutorials/java-break-statement-label