Schleifen werden verwendet, um bestimmte Programmabschnitte mehrfach auszuführen. In Java stehen, wie auch in Sprachen wie C, C++ oder JavaScript, die bekannten Schleifentypen for, while und do...while zur Verfügung.
For-Schleife
Im folgenden Beispiel werden zwei for-Schleifen eingesetzt: Die erste zählt den Zähler i von 0 bis einschließlich 9 in Schritten von 1 hoch. Die zweite Schleife läuft in umgekehrter Richtung und zählt von 10 bis einschließlich 0 ebenfalls in Einerschritten herunter. In jeder Iteration wird der aktuelle Wert von i ausgegeben.
Programm mit zwei For-Schleifen, um bis 9 und dann von 10 zu zählen. Quelle: Technik-Kiste.de
Aufbau
Eine klassische for-Schleife in Java (und ähnlichen Sprachen) besteht aus drei Teilen, die im Kopf der Schleife in runden Klammern stehen:
for (Initialisierung; Bedingung; Aktualisierung) {
// Anweisungen, die wiederholt ausgeführt werden
}
Initialisierung: Hier wird meist eine Zählvariable angelegt und mit einem Startwert versehen, z. B. int i = 0;.
Bedingung: Solange diese Bedingung true ist, läuft die Schleife weiter. Typisch ist ein Vergleich wie i <= 9;.
Aktualisierung: Nach jedem Durchlauf wird die Zählvariable verändert, z. B. i++ oder i--.
Post-Inkrement (i++) und Prä-Inkrement (++i)
In Java (und vielen anderen Sprachen) gibt es zwei Varianten, eine Variable um eins zu erhöhen:
Post-Inkrement (i++)
- Erst wird der aktuelle Wert von i verwendet.
- Danach wird i um 1 erhöht.
- Beispiel:
int i = 5;
System.out.println(i++); // Ausgabe: 5, danach ist i = 6
Prä-Inkrement (++i)
- Zuerst wird i um 1 erhöht.
- Dann wird der neue Wert verwendet.
- Beispiel:
int i = 5;
System.out.println(++i); // Ausgabe: 6, danach ist i = 6
Dekrement (i-- oder --i)
Analog funktioniert das Verringern einer Variablen um 1:
- i-- → aktueller Wert wird genutzt, danach um 1 verringert.
- --i → erst verringern, dann den neuen Wert nutzen.
Bezug zum For-Schleifen Beispiel
In der aufwärtszählenden Schleife (for (int i = 0; i <= 9; i++)) wird i++ verwendet. Das bedeutet: Nach jedem Schleifendurchlauf wird i um 1 erhöht.
In der abwärtszählenden Schleife (for (int i = 10; i >= 0; i -= 1)) wird i bei jedem Durchlauf um 1 verringert. Hier nutzt du keinen Inkrement-/Dekrement-Operator, sondern eine Subtraktion (i -= 1), was funktional dem i-- entspricht.
💡 Merksätze
Post (i++): „Erst benutzen, dann erhöhen.“
Prä (++i): „Erst erhöhen, dann benutzen.“
While-Schleife
Die while-Schleife ist eine sogenannte kopfgesteuerte Schleife. Das bedeutet: Zuerst wird die Bedingung geprüft, dann der Schleifenrumpf ausgeführt.
Programm mit einer While-Schleife für einen Countdown. Quelle: Technik-Kiste.de
Aufbau
while (Bedingung) {
// Anweisungen, die wiederholt ausgeführt werden
}
Bedingung: Ein logischer Ausdruck, der true oder false ergibt.
Schleifenrumpf: Der Codeblock in geschweiften Klammern, der so lange wiederholt wird, wie die Bedingung true ist.
Sobald die Bedingung false wird, endet die Schleife und das Programm läuft nach der Schleife weiter.
Typische Einsatzgebiete
While-Schleifen finden Anwendung wenn nicht im Voraus klar ist, wie oft der Code wiederholt werden muss (z. B. Eingaben prüfen, bis eine gültige Eingabe vorliegt). Oftmals werden sie auch für Endlosschleifen mit while(true), die nur durch break oder externe Bedingungen beendet werden, eingesetzt.
💡 Merksatz: Die while-Schleife fragt immer zuerst, ob sie laufen darf. Nur wenn die Bedingung erfüllt ist, wird der Codeblock ausgeführt.
Do…while-Schleife
Die do...while-Schleife ist – wie die while-Schleife – eine kopfgesteuerte Kontrollstruktur, allerdings mit einem entscheidenden Unterschied:
- Bei der while-Schleife wird die Bedingung vor dem ersten Durchlauf geprüft.
- Bei der ..while-Schleife wird die Bedingung erst am Ende geprüft.
Das bedeutet: Der Schleifenrumpf wird mindestens einmal ausgeführt, selbst wenn die Bedingung von Anfang an false ist.
Programm das bis 10 zählt. Quelle: Technik-Kiste.de
Aufbau
do {
// Anweisungen, die mindestens einmal ausgeführt werden
} while (Bedingung);
do: leitet den Schleifenblock ein.
Bedingung: wird nach dem Block geprüft.
Semikolon: am Ende der Bedingung zwingend erforderlich (Unterschied zur normalen while-Schleife).
Vergleich zur while-Schleife
|
Merkmal |
while-Schleife |
do...while-Schleife |
|
Bedingung geprüft |
vor dem Block |
nach dem Block |
|
Mindestens 1 Durchlauf |
nein |
ja |
|
Syntax-Ende |
kein Semikolon |
Semikolon nach while |
💡 Merksätze
while: „Frag zuerst, ob du darfst – dann handle.“
do...while: „Handle einmal – und frag danach, ob du weitermachen darfst.“


