В этом руководстве вы узнаете об операторе break, помеченном оператором break в Java, с помощью примеров.
При работе с циклами иногда желательно пропустить некоторые операторы внутри цикла или немедленно завершить цикл, не проверяя тестовое выражение.
В таких случаях break
и continue
используются заявления. Вы узнаете об операторе continue в Java из следующего руководства.
break
Заявление в Java завершает цикл сразу же, и контроль программы переходит к следующему оператору после цикла.
Он почти всегда используется с операторами принятия решений (оператор Java if… else).
Вот синтаксис оператора break в Java:
break;
Как работает оператор break?
Работа оператора Java breakПример 1: оператор прерывания Java
class Test ( public static void main(String() args) ( // for loop for (int i = 1; i <= 10; ++i) ( // if the value of i is 5 the loop terminates if (i == 5) ( break; ) System.out.println(i); ) ) )
Выход :
1 2 3 4
В приведенной выше программе мы используем for
цикл для вывода значения i на каждой итерации. Чтобы узнать, как for
работает цикл, посетите цикл Java for. Здесь обратите внимание на утверждение,
if (i == 5) ( break; )
Это означает, что когда значение i равно 5, цикл завершается. Следовательно, мы получаем результат только со значениями меньше 5.
Пример 2: оператор прерывания Java
Программа ниже вычисляет сумму чисел, введенных пользователем, пока пользователь не введет отрицательное число.
Чтобы принять ввод от пользователя, мы использовали Scanner
объект. Чтобы узнать больше Scanner
, посетите Java Scanner.
import java.util.Scanner; class UserInputSum ( public static void main(String() args) ( Double number, sum = 0.0; // create an object of Scanner Scanner input = new Scanner(System.in); while (true) ( System.out.print("Enter a number: "); // takes double input from user number = input.nextDouble(); // if number is negative the loop terminates if (number < 0.0) ( break; ) sum += number; ) System.out.println("Sum = " + sum); ) )
Выход :
Введите число: 3.2 Введите число: 5 Введите число: 2.3 Введите число: 0 Введите число: -4,5 Сумма = 10,5
В приведенной выше программе тестовое выражение while
цикла всегда true
. Здесь обратите внимание на линию,
if (number < 0.0) ( break; )
Это означает, что когда пользователь вводит отрицательные числа, цикл while завершается.
Разрыв Java и вложенный цикл
В случае вложенных циклов break
оператор завершает самый внутренний цикл.
Здесь оператор break завершает самый внутренний while
цикл, а управление переходит к внешнему циклу.
Помеченное заявление о перерыве
До сих пор мы использовали оператор break без метки. Он завершает самый внутренний цикл и оператор переключения. Однако в Java существует другая форма оператора break, известная как помеченный break.
Мы также можем использовать помеченный оператор break для завершения самого внешнего цикла.
Работа помеченного оператора break в JavaКак вы можете видеть на изображении выше, мы использовали идентификатор метки, чтобы указать внешний цикл. Теперь обратите внимание, как используется break
оператор ( break label;
).
Здесь break
оператор завершает помеченный оператор (т.е. внешний цикл). Затем управление программой переходит к оператору после помеченного оператора.
Вот еще пример:
while (testExpression) ( // codes second: while (testExpression) ( // codes while(testExpression) ( // codes break second; ) ) // control jumps here )
В приведенном выше примере, когда оператор break second;
выполняется, while
цикл обозначен как второй прекращается. И управление программой переходит к оператору после второго while
цикла.
Пример 3: помеченный оператор break
class LabeledBreak ( public static void main(String() args) ( // the for loop is labeled as first first: for( int i = 1; i < 5; i++) ( // the for loop is labeled as second second: for(int j = 1; j < 3; j ++ ) ( System.out.println("i = " + i + "; j = " +j); // the break statement breaks the first for loop if ( i == 2) break first; ) ) ) )
Выход :
я = 1; j = 1 i = 1; j = 2 i = 2; j = 1
В приведенном выше примере labeled break
оператор используется для завершения цикла, помеченного как первый. Это,
first: for(int i = 1; i < 5; i++) (… )
При этом, если мы изменим заявление break first;
в break second;
программу будет вести себя по- разному. В этом случае for
цикл, помеченный как второй, будет завершен. Например,
class LabeledBreak ( public static void main(String() args) ( // the for loop is labeled as first first: for( int i = 1; i < 5; i++) ( // the for loop is labeled as second second: for(int j = 1; j < 3; j ++ ) ( System.out.println("i = " + i + "; j = " +j); // the break statement terminates the loop labeled as second if ( i == 2) break second; ) ) ) )
Выход :
я = 1; j = 1 i = 1; j = 2 i = 2; j = 1 i = 3; j = 1 i = 3; j = 2 i = 4; j = 1 i = 4; j = 2
Примечание : break
оператор также используется для завершения наблюдений внутри switch
оператора. Чтобы узнать больше, посетите оператор переключения Java.