Изявление за Java break (с примери)

В този урок ще научите за изявлението за прекъсване, обозначено като прекъсване в Java с помощта на примери.

Докато работите с цикли, понякога е желателно да пропуснете някои изрази вътре в цикъла или да прекратите цикъла веднага, без да проверявате тестовия израз.

В такива случаи се използват breakи continueизявления. За инструкцията за продължаване на Java ще научите в следващия урок.

Операторът breakв Java прекратява цикъла незабавно и контролът на програмата се премества към следващия оператор, следващ цикъла.

Почти винаги се използва с изявления за вземане на решения (Java if … else Statement).

Ето синтаксиса на оператора break в Java:

 break;

Как работи изявлението break?

Работа на Java Break Statement

Пример 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 loop. Тук забележете изявлението,

 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 в 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: Обозначено изявление за прекъсване

 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; ) ) ) )

Изход :

i = 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; ) ) ) )

Изход :

i = 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.

Интересни статии...