Java-do-while-Schleife: So nutzt du den Loop
Mit dem Java-do-while-Loop stellst du sicher, dass dein Programm Anweisungen so lange wiederholt, bis eine festgelegte Abbruchbedingung eintritt. Diese Schleife lässt sich zudem flexibel mit weiteren Funktionen verknüpfen.
Was ist eine do-while-Schleife?
Den do-while-Loop nutzt du in Java, um eine Aktion so lange auszuführen, bis eine definierte Bedingung erfüllt, also „true“ (wahr) ist. Solche Schleifen sind in fast allen Programmiersprachen Standard, um Codeblöcke mehrfach zu durchlaufen. In Java gilt der do-while-Loop als spezielle Variante des klassischen while-Loops.
Syntax des do-while-Loops in Java
Der Aufbau eines do-while-Loops in Java folgt immer diesem Schema:
do {
//Anweisungen
}
while(Voraussetzung);javaDie Schleife startet mit dem Keyword „do“. Danach folgen die Anweisungen, die dein Programm abarbeiten soll. Erst nach dem Block steht das Keyword „while“, das die Abbruchbedingung einleitet. Diese wird als boolescher Ausdruck definiert und ist logisch entweder „true“ oder „false“. Ein klassisches Beispiel dafür ist eine Zählvariable, mit der du die Anzahl der Durchläufe präzise steuerst.
So funktioniert der Loop
Sobald der Java-do-while-Loop startet, führt das Programm zuerst die Anweisungen im Schleifenkörper aus. Erst danach wird die Abbruchbedingung geprüft. Ist diese „true“ (also noch nicht erreicht), beginnt der nächste Durchgang. Sobald die Bedingung jedoch „false“ liefert, stoppt das Programm die Schleife und setzt die Ausführung beim restlichen Code fort.
Einfaches Beispiel für eine Schleife
Schauen wir uns die Funktionsweise anhand eines praktischen Beispiels an. Wir setzen einen Startwert x auf 10 fest. Mithilfe des Java-Operators „++“ erhöhen wir diesen Wert pro Durchlauf um 1 und lassen ihn via Java-Befehl System.out.println ausgeben. Die Schleife läuft, solange x kleiner als 20 ist. Der Code sieht wie folgt aus:
public class Main {
public static void main(String[] args) {
int x = 10;
do {
System.out.println(x);
x++;
}
while (x < 20);
}
}javaBeim Ausführen des Codes erhältst du dieses Ergebnis:
10
11
12
13
14
15
16
17
18
19javaDas Programm hat den Wert am Ende als 20 identifiziert. Da x damit nicht mehr kleiner als 20 ist, ist die Bedingung erfüllt und der do-while-Loop wird beendet.
Endlosschleife mit „true“ erstellen
Durch den booleschen Ausdruck „true“ kannst du mit do-while eine Endlosschleife bauen. Da die Abbruchbedingung so nie eintritt, hört die Schleife nicht von selbst auf. Um sie zu stoppen, musst du manuell die Tastenkombination [Strg] + [C] drücken. Hier der passende Code:
public class Main {
public static void main(String[] args) {
do {
System.out.println("Sie befinden sich in einer Endlosschleife.");
}
while(true);
}
}javaDie Ausgabe nach dem Start sieht so aus:
Sie befinden sich in einer Endlosschleife.
Sie befinden sich in einer Endlosschleife.
Sie befinden sich in einer Endlosschleife.
Sie befinden sich in einer Endlosschleife.
Sie befinden sich in einer Endlosschleife.
ctrl+cjavaOhne dein manuelles Eingreifen läuft dieser Prozess dauerhaft weiter.
Der Unterschied: do-while vs. while
Obwohl sich der Java-do-while-Loop und die while-Schleife ähneln, gibt es einen wesentlichen Unterschied: Beim while-Loop wird die Bedingung direkt zu Beginn geprüft. Die do-while-Schleife hingegen läuft immer mindestens einmal komplett durch, bevor die erste Prüfung stattfindet. Möchtest du also sichergehen, dass dein Code mindestens einmal ausgeführt wird, ist do-while die richtige Wahl. Spielt die Bedingung schon vor dem ersten Schritt eine Rolle, nutze die kopfgesteuerte while-Schleife.