Java break-statement: hoe, wanneer en gelabelde breaks uitgelegd
Java break-statement
Deze tutorial legt de Java break-statement uit, de syntax en hoe je gelabelde breaks gebruikt voor nauwkeurige lus-control.
Wanneer je met lussen werkt, moet je misschien de overige statements in een iteratie overslaan of de lus volledig beëindigen zonder de lusconditie opnieuw te evalueren. De break- en continue-statements bieden die control. De volgende tutorial behandelt continue.
De break-statement verlaat direct de innerste lus of switch-construct, en de programmatuutvoering gaat verder met de statement die volgt op het beëindigde blok.
Het wordt meest vaak gebruikt in combinatie met conditionele logica zoals if…else om vroege exit-punten te creëren.
Syntax:
break;
Hoe de break-statement werkt

Voorbeeld 1: break in een for-lus gebruiken
class Test {
public static void main(String[] args) {
// for-lus
for (int i = 1; i <= 10; ++i) {
// als de waarde van i 5 is, beëindigt de lus
if (i == 5) {
break;
}
System.out.println(i);
}
}
}
Output:
1 2 3 4
De lus print waarden 1 tot 4. Het if-blok controleert i; wanneer het gelijk is aan 5, stopt break de lus.
Voorbeeld 2: break in een while-lus met gebruikersinput
Hier tellen we getallen die de gebruiker invoert op tot een negatief getal wordt gegeven.
We gebruiken Scanner om input te lezen. Meer over Scanner in de Java Scanner tutorial.
import java.util.Scanner;
class UserInputSum {
public static void main(String[] args) {
Double number, sum = 0.0;
Scanner input = new Scanner(System.in);
while (true) {
System.out.print("Voer een getal in: ");
number = input.nextDouble();
if (number < 0.0) {
break;
}
sum += number;
}
System.out.println("Som = " + sum);
}
}
Output:
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
De while (true)-lus draait oneindig tot break getriggerd wordt bij een negatieve waarde.
Break in geneste lussen
In geneste lussen verlaat break alleen de innerste lus.

De afbeelding illustreert dat break binnen de innerlijke while springt naar de outer lus.
Gelabelde break-statement
Naast de simpele break biedt Java een gelabelde variant die een outer lus direct kan beëindigen. Dit is nuttig wanneer je meerdere niveaus geneste lussen moet verlaten.

Het label gaat de lus vooraf, en break label; beëindigt die lus, springend naar de statement die erop volgt.
while (testExpression) {
// codes
second: while (testExpression) {
// codes
while(testExpression) {
// codes
break second;
}
}
// control springt hier
}
Wanneer break second; uitgevoerd wordt, eindigt de gelabelde lus second, en hervat control na die lus.
Voorbeeld 3: Een gelabelde break gebruiken
class LabeledBreak {
public static void main(String[] args) {
first: for (int i = 1; i < 5; i++) {
second: for (int j = 1; j < 3; j++) {
System.out.println("i = " + i + "; j = " + j);
if (i == 2) break first;
}
}
}
}
Output:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Hier verlaat break first; de outer for-lus, dus het programma stopt na het printen van de derde regel.
Als we break first; vervangen door break second;, beëindigt alleen de inner-lus, en de outer-lus gaat door.
class LabeledBreak {
public static void main(String[] args) {
first: for (int i = 1; i < 5; i++) {
second: for (int j = 1; j < 3; j++) {
System.out.println("i = " + i + "; j = " + j);
if (i == 2) break second;
}
}
}
}
Output:
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
Let op: De break-statement beëindigt ook switch-cases. Lees meer: Java switch-statement tutorial.
Java
- De C# Switch Statement: Syntaxis, Voorbeelden & Best Practices
- C# Break Statement: Hoe en Wanneer Te Gebruiken
- C# Continue Statement: Effectief Lusiteraties Overslaan
- C++ Switch‑Case Onder de Knie: Syntaxis, Gebruik en Praktische Voorbeelden
- Java-operators beheersen: typen, syntax en praktische voorbeelden
- Java-commentaar: typen, gebruik en best practices
- Java Enhanced For-lus beheersen: syntax, voorbeelden en best practices
- Java Strings beheersen: aanmaken, methodes en best practices
- Java interfaces meesteren: concepten, implementatie en best practices
- Java Try-with-resources meesteren: automatische resource management uitgelegd
- Java Annotaties uitgelegd: typen, plaatsing en praktische voorbeelden