Wann benutzen?
Wenn die Anzahl der Wiederholungen vorab bekannt ist. Z. B. „10-mal ausführen" oder „alle Elemente eines Arrays durchlaufen".
Aufbau
3 Teile im Kopf: Initialisierung → Bedingung → Update. Alle getrennt durch Semikolon.
for (int i = 0; i < 5; i++) {
System.out.println("Durchlauf: " + i);
}
💡
Merkhilfe: Die drei Teile stehen immer in der gleichen Reihenfolge: Start → Stopp-Bedingung → Schritt. Man kann sich merken: „Wie lange mache ich das?"
Simulator
// Drücke ▶ Starten…
Ablaufdiagramm
START
↓
① int i = 0
↓
② i < 5 ?
true
↓
Code ausführen
↓
③ i++
↑ zurück zu ②
Wann benutzen?
Wenn die Anzahl der Wiederholungen unbekannt ist. Z. B. „Solange der User keine gültige Eingabe macht" oder „Solange das Spiel läuft".
Wichtig
Die Bedingung wird vor jedem Durchlauf geprüft. Ist sie von Anfang an false, wird der Code nie ausgeführt!
int countdown = 5;
while (countdown > 0) {
System.out.println(countdown + "... ");
countdown--;
}
System.out.println("Start!");
💡
Merkhilfe: „Solange die Bedingung wahr ist, mache …" – wie ein Wächter, der immer zuerst prüft, bevor er dich reinlässt.
Simulator
// Drücke ▶ Starten…
Ablaufdiagramm
START
↓
Bedingung prüfen
true
↓
Code ausführen
↑ zurück zur Bedingung
Wann benutzen?
Wenn der Code mindestens einmal laufen soll. Z. B. Benutzer nach Eingabe fragen – dann prüfen ob sie gültig ist.
Der Unterschied
Bei while wird zuerst geprüft. Bei do-while wird zuerst ausgeführt, dann geprüft.
int zahl;
do {
System.out.println("Gib eine Zahl > 0 ein:");
zahl = scanner.nextInt();
} while (zahl <= 0);
💡
Merkhilfe: „Tue dies – und dann schau, ob du weitermachen musst." Das Semikolon nach while(...) nicht vergessen!
Simulator
// Drücke ▶ Starten…
Ablaufdiagramm
START
↓
Code ausführen
(immer mindestens 1×)
↓
Bedingung prüfen
Vergleich auf einen Blick
| Merkmal |
for |
while |
do-while |
| Anzahl bekannt? |
Ja |
Nein |
Nein |
| Mindestens 1 Durchlauf? |
Möglich (0 wenn false) |
Nicht garantiert |
Immer |
| Bedingung geprüft |
Vor jedem Durchlauf |
Vor jedem Durchlauf |
Nach jedem Durchlauf |
| Zählvariable im Kopf |
Ja |
Extern definieren |
Extern definieren |
| Typisches Beispiel |
Array durchlaufen |
Passwort prüfen |
Menü anzeigen |