Java break-instructie (met voorbeelden)

In deze tutorial leer je met behulp van voorbeelden over de break-instructie, het label break-instructie in Java.

Tijdens het werken met lussen is het soms wenselijk om enkele instructies in de lus over te slaan of de lus onmiddellijk te beëindigen zonder de testuitdrukking te controleren.

In dergelijke gevallen worden breaken continueverklaringen gebruikt. In de volgende zelfstudie leert u meer over de Java-vervolgverklaring.

De breakinstructie in Java beëindigt de lus onmiddellijk en de besturing van het programma gaat naar de volgende instructie die volgt op de lus.

Het wordt bijna altijd gebruikt bij besluitvormingsverklaringen (Java if… else Statement).

Hier is de syntaxis van de break-instructie in Java:

 break;

Hoe break-statement werkt?

Werking van Java Break Statement

Voorbeeld 1: Java break-instructie

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

Uitgang :

 1 2 3 4

In het bovenstaande programma gebruiken we de forlus om de waarde van i in elke iteratie af te drukken. Om te weten hoe forloop werkt, gaat u naar Java for loop. Let hier op de verklaring,

 if (i == 5) ( break; )

Dit betekent dat wanneer de waarde van i gelijk is aan 5, de lus eindigt. Daarom krijgen we de uitvoer alleen met waarden kleiner dan 5.

Voorbeeld 2: Java break-instructie

Het onderstaande programma berekent de som van door de gebruiker ingevoerde getallen totdat de gebruiker een negatief getal invoert.

Om input van de gebruiker te krijgen, hebben we het Scannerobject gebruikt. Voor meer informatie over Scanner, bezoek 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); ) )

Uitgang :

 Voer een getal in: 3.2 Voer een getal in: 5 Voer een getal in: 2.3 Voer een getal in: 0 Voer een getal in: -4,5 Som = 10,5

In het bovenstaande programma is de testuitdrukking van de whilelus altijd true. Let hier op de lijn,

 if (number < 0.0) ( break; )

Dit betekent dat wanneer de gebruiker negatieve getallen invoert, de while-lus wordt beëindigd.

Java-onderbreking en geneste lus

In het geval van geneste lussen, breakbeëindigt de instructie de binnenste lus.

Werking van Break Statement met geneste lussen

Hier beëindigt de break-instructie de binnenste whilelus en springt de besturing naar de buitenste lus.

Gelabelde pauze-instructie

Tot nu toe hebben we de niet-gelabelde break-statement gebruikt. Het beëindigt de binnenste lus- en switch-instructie. Er is echter een andere vorm van break-instructie in Java die bekend staat als de gelabelde break.

We kunnen de gelabelde break-instructie gebruiken om ook de buitenste lus te beëindigen.

Werking van het gelabelde break-statement in Java

Zoals u in de bovenstaande afbeelding kunt zien, hebben we de label-ID gebruikt om de buitenste lus te specificeren. Merk nu op hoe de breakinstructie wordt gebruikt ( break label;).

Hier breakbeëindigt de instructie de gelabelde instructie (dwz buitenste lus). Vervolgens springt de besturing van het programma naar de instructie na de gelabelde instructie.

Hier is nog een voorbeeld:

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

In het bovenstaande voorbeeld, wanneer de instructie break second;wordt uitgevoerd, wordt de whilelus met het label second beëindigd. En de besturing van het programma gaat naar de instructie na de tweede whilelus.

Voorbeeld 3: gelabeld break-statement

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

Uitgang :

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

In het bovenstaande voorbeeld wordt de labeled breakinstructie gebruikt om de lus te beëindigen die is gelabeld als eerste. Dat is,

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

Hier, als we de instructie veranderen, break first;zal break second;het programma zich anders gedragen. In dit geval wordt de forlus met het label second beëindigd. Bijvoorbeeld,

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

Uitgang :

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

Opmerking : de breakinstructie wordt ook gebruikt om cases binnen de switchinstructie te beëindigen . Bezoek de Java-switchverklaring voor meer informatie.

Interessante artikelen...