Prohlášení o přerušení Java (s příklady)

V tomto kurzu se na příkladech dozvíte o příkazu break, který je v Javě označen jako příkaz break.

Při práci se smyčkami je někdy žádoucí přeskočit některé příkazy uvnitř smyčky nebo smyčku okamžitě ukončit bez kontroly testovacího výrazu.

V takových případech se použijí příkazy breaka continue. O příkazu Java continue se dozvíte v dalším kurzu.

Příkaz breakv Javě smyčku okamžitě ukončí a ovládání programu se přesune na další příkaz následující po smyčce.

Téměř vždy se používá s výroky rozhodování (prohlášení Java, pokud … else).

Zde je syntaxe příkazu break v Javě:

 break;

Jak příkaz break funguje?

Pracovní příkaz Java break

Příklad 1: Příkaz Java break

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

Výstup :

 1 2 3 4

Ve výše uvedeném programu používáme forsmyčku k tisku hodnoty i v každé iteraci. Chcete-li vědět, jak forfunguje smyčka, navštivte smyčku Java for. Zde si všimněte prohlášení,

 if (i == 5) ( break; )

To znamená, že když je hodnota i rovna 5, smyčka končí. Proto dostaneme výstup pouze s hodnotami menšími než 5.

Příklad 2: Příkaz Java break

Níže uvedený program vypočítá součet čísel zadaných uživatelem, dokud uživatel nezadá záporné číslo.

Abychom převzali vstup od uživatele, použili jsme Scannerobjekt. Chcete-li se dozvědět více Scanner, navštivte 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); ) )

Výstup :

 Zadejte číslo: 3.2 Zadejte číslo: 5 Zadejte číslo: 2.3 Zadejte číslo: 0 Zadejte číslo: -4,5 Součet = 10,5

Ve výše uvedeném programu je testovací výraz whilesmyčky vždy true. Tady si všimněte řádku,

 if (number < 0.0) ( break; )

To znamená, že když uživatel zadá záporná čísla, smyčka while je ukončena.

Přerušení Java a vnořená smyčka

V případě vnořených smyček breakpříkaz ukončí nejvnitřnější smyčku.

Práce s příkazem break s vnořenými smyčkami

Zde příkaz break ukončí nejvnitřnější whilesmyčku a ovládání přeskočí na vnější smyčku.

Prohlášení o přestávce se štítkem

Dosud jsme použili neoznačený příkaz break. Ukončí příkaz nejvnitřnější smyčky a přepínače. V Javě však existuje jiná forma příkazu break, která se označuje jako break s označením.

Můžeme použít příkaz s označením break, abychom ukončili také nejvzdálenější smyčku.

Práce s příkazem označeného konce v Javě

Jak vidíte na obrázku výše, k určení vnější smyčky jsme použili identifikátor štítku. Nyní si všimněte, jak se breakpříkaz používá ( break label;).

Zde breakpříkaz ukončuje označený příkaz (tj. Vnější smyčku). Poté ovládací prvek programu přeskočí na příkaz za označeným příkazem.

Zde je další příklad:

 while (testExpression) ( // codes second: while (testExpression) ( // codes while(testExpression) ( // codes break second; ) ) // control jumps here )

Ve výše uvedeném příkladu, když je tvrzení break second;je proveden, whilesmyčka označen jako druhý se ukončí. Ovládací prvek programu se přesune na příkaz po druhé whilesmyčce.

Příklad 3: Příkaz označeného přerušení

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

Výstup :

i = 1; j = 1 i = 1; j = 2 i = 2; j = 1

Ve výše uvedeném příkladu se labeled breakpříkaz používá k ukončení smyčky označené jako první. To znamená

 first: for(int i = 1; i < 5; i++) (… )

Zde, pokud změníme prohlášení break first;k break second;programu bude chovat jinak. V tomto případě bude forsmyčka označená jako druhá ukončena. Například,

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

Výstup :

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

Poznámka : Příkaz breakse také používá k ukončení případů uvnitř switchpříkazu. Další informace najdete v prohlášení o přepínání prostředí Java.

Zajímavé články...