Java break statement, label – Tutorial
There are two forms of break statement – unlabeled and labeled. Mostly break statement is used to terminate a loop based on some condition, for example break the processing if exit command is reached. Unlabeled break statement is used to terminate the loop containing it and can be used with switch, for, while and do-while loops.
Break in Java Example
Here is an example showing java break statement usage in for loop, while loop and do-while loop.
Java Break in Loops
package com.journaldev.util;
public class JavaBreak {
public static void main(String[] args) {
String[] arr = { "A", "E", "I", "O", "U" };
// find O in the array using for loop
for (int len = 0; len < arr.length; len++) {
if (arr[len].equals("O")) {
System.out.println("Array contains 'O' at index: " + len);
// break the loop as we found what we are looking for
break;
}
}
// use of break in while loop
int len = 0;
while (len < arr.length) {
if (arr[len].equals("E")) {
System.out.println("Array contains 'E' at index: " + len);
// break the while loop as we found what we are looking for
break;
}
len++;
}
len = 0;
// use of break in do-while loop
do {
if (arr[len].equals("U")) {
System.out.println("Array contains 'U' at index: " + len);
// break the while loop as we found what we are looking for
break;
}
len++;
} while (len < arr.length);
}
}
Note that if we remove break statement, there won’t be any difference in the output of the program. For small iterations like in this example, there is not much of a performance benefit. But if the iterator size is huge, then it can save a lot of processing time.
Java Break Label
Labeled break statement is used to terminate the outer loop, the loop should be labeled for it to work. Here is an example showing java break label statement usage.
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;
// find index of first int greater than 10
searchint:
for (row = 0; row < arr.length; row++) {
for (col = 0; col < arr[row].length; col++) { if (arr[row][col] > 10) {
found = true;
// using break label to terminate outer statements
break searchint;
}
}
}
if (found)
System.out.println("First int greater than 10 is found at index: [" + row + "," + col + "]");
}
}