Оператор break в Java
Оператор языка Java break, может применяться в следующих случаях:
- Для завершения последовательности операторов в операторе
switch
, что было рассмотрено в Оператор switch. - Его можно использовать для выхода из цикла.
- Можно применять в качестве "цивилизованной" формы оператора безусловного перехода
goto
.
Применение оператора break для выхода из цикла
Рассмотрим пример применения оператора break для выхода из цикла while. По условию цикла while, цикл должен выполниться 100 раз. Если в случае какой-то непредвиденной ситуации мы хотим выйти раньше, используется оператор break.
public class BreakLoopExample1 {
public static void main(String[] args) {
int i = 0, n = 100;
while (i < n) {
if (i == 10) {
break;
}
System.out.println("i: " + i++);
}
System.out.println("Цикл завершен.");
}
}
Следует отметить, что оператор break не предназначен в качестве обычного средства выхода из цикла. Для этого служит условное выражение в цикле. Этот оператор следует использовать для выхода из цикла только в особых случаях. Также оператор break следует использовать только внутри цикла.
Применение оператора break для выхода из внутреннего цикла
Если в программе применяется ряд вложенных циклов, то оператор break осуществляет выход только из самого внутреннего цикла. Например:
public class BreakLoopExample2 {
public static void main(String[] args) {
for (int i = 0; i < 3; i++) {
System.out.print("Пpoxoд " + i + " : ");
for (int j = 0; j < 100; j++) {
if (j == 10) {
break;
}
System.out.print(j + " ");
}
System.out.println();
}
System.out.println("Циклы завершены");
}
}
Результат выполнения программы:
Проход 0 : 0 1 2 3 4 5 6 7 8 9
Проход 1 : 0 1 2 3 4 5 6 7 8 9
Проход 2 : 0 1 2 3 4 5 6 7 8 9
Циклы завершены
В цикле можно использовать больше одного оператора break, но лучше этого не делать.
Оператор break с меткой
Рассмотрим применение оператора break с меткой. Этот вариант может использоваться в качестве цивилизованной формы оператора goto
, которого нет в языке Java в отличие от некоторых других языков программирования.
break метка;
Где метка - это имя метки, обозначающее блок кода. Им может быть как самостоятельный блок кода, так и целевой блок другого оператора. Чтобы пометить блок, достаточно поместить в его начале метку.
Применение break с меткой для выхода из вложенных циклов
В следующем коде три блока кода отмечены метками first
, second
, third
. При достижении строки break second;
мы выходим из блока second
.
public class BreakLoopExample3 {
public static void main(String[] args) {
boolean t = true;
first:
{
second:
{
third:
{
System.out.println("Перед break.");
if (t) {
break second;
}
System.out.println("Этот код не будет выполнен.");
}
System.out.println("Этот код не будет выполнен.");
}
System.out.println("После второго блока.");
}
}
}
Результат выполнения кода:
Перед break.
После второго блока.
Часто break c меткой используется для выхода из внутреннего цикла, как показано в этом примере:
public class BreakLoopExample4 {
public static void main(String[] args) {
outer:
for (int i = 0; i < 3; i++) {
System.out.print("Пpoxoд " + i + " : ");
for (int j = 0; j < 100; j++) {
if (j == 10) {
break outer; // выход из обоих циклов
}
System.out.print(j + " ");
}
System.out.println("Этa строка не будет выводиться");
}
}
}
Презентацию с видео можно скачать на Patreon.
Please log in or register to have a possibility to add comment.