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 break
en continue
verklaringen gebruikt. In de volgende zelfstudie leert u meer over de Java-vervolgverklaring.
De break
instructie 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?

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 for
lus om de waarde van i in elke iteratie af te drukken. Om te weten hoe for
loop 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 Scanner
object 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 while
lus 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, break
beëindigt de instructie de binnenste lus.

Hier beëindigt de break-instructie de binnenste while
lus 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.

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 break
instructie wordt gebruikt ( break label;
).
Hier break
beë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 while
lus met het label second beëindigd. En de besturing van het programma gaat naar de instructie na de tweede while
lus.
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 break
instructie 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 for
lus 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 break
instructie wordt ook gebruikt om cases binnen de switch
instructie te beëindigen . Bezoek de Java-switchverklaring voor meer informatie.