- 1 Section
- 10 Lessons
- unbegrenzt
- Java Grundlagen10
- 1.1Java-Grundlagen: JDK, JVM, erstes Programm
- 1.2Variablen, Datentypen und Operatoren
- 1.3Kontrollstrukturen: if, else, switch
- 1.4Schleifen: for, while, do-while
- 1.5Arrays und Strings
- 1.6Methoden: Definition, Parameter, Rückgabe
- 1.7Fehlerbehandlung: try-catch-finally, Exceptions
- 1.8Einstieg in Klassen und Objekte
- 1.9Eingabe und Ausgabe: Scanner, System.out
- 1.10Praxisprojekt: Kleines Java-Programm von A bis Z
Schleifen: for, while, do-while
Stell dir vor, du sollst die Namen aller Mitarbeiter eines Unternehmens auf den Bildschirm schreiben. Bei 5 Mitarbeitern könntest du 5 mal System.out.println(...) hinschreiben. Bei 500 wäre das Wahnsinn. Bei einem Programm das mit jedem neuen Mitarbeiter umgehen muss, sowieso unmöglich. Hier kommen Schleifen ins Spiel: sie führen denselben Code-Block wieder und wieder aus, bis eine Bedingung nicht mehr erfüllt ist.
Die Analogie: Eine Schleife ist wie eine Kreisverkehr-Fahrt mit einem Ausgang. Du fährst rein, machst eine Runde (führst den Code-Block aus), kommst an die Ausfahrt-Prüfung. Wenn du noch nicht aussteigen darfst, fährst du noch eine Runde. Bis irgendwann die Bedingung sagt: „raus hier!". Java hat drei Schleifen-Typen: for (wenn du weißt wie oft), while (solange Bedingung gilt) und do-while (mindestens einmal ausführen). Lass uns mit der häufigsten anfangen.
1) Die for-Schleife – Anatomie
Die for-Schleife besteht aus drei Teilen in den Klammern, getrennt durch Semikolons. Diese drei Teile machen for so kompakt – aber für Anfänger anfangs verwirrend. Klicke auf einen Teil für die Erklärung:
System.out.println(i);
}
0 1 2 3 4. Klassischer Anfängerfehler: off-by-one. Soll die Schleife 5x laufen, schreibe i < 5 (nicht i <= 5, sonst 6 Durchläufe!). Faustregel: bei i < n wird n-mal durchlaufen.2) Schleifen-Tracer: Schritt für Schritt durchgehen
Schleifen zu verstehen heißt: nachvollziehen können was bei jedem Durchlauf passiert. Hier kannst du eine Schleife Zeile für Zeile abarbeiten und sehen wie sich die Variablen ändern. Diese Technik (mental durchgehen) heißt Trace und ist die wichtigste Skill beim Debuggen. Wähle einen Schleifen-Typ:
3) Die drei Schleifen-Typen im Vergleich
Die drei Schleifen-Arten unterscheiden sich darin wann die Bedingung geprüft wird und wie der Zähler organisiert ist. Wähle die richtige je nach Situation:
4) break und continue: Ausnahmen im Schleifen-Lauf
Manchmal willst du die Schleife vorzeitig verlassen, oder einen Durchlauf überspringen. Dafür gibt es zwei Sonder-Befehle:
break– verlässt die Schleife sofort, egal was die Bedingung sagt. Nützlich wenn du z.B. ein bestimmtes Element gesucht und gefunden hast (siehe Suchalgorithmen).continue– springt zum nächsten Durchlauf, überspringt den Rest des aktuellen Schleifenkörpers. Nützlich wenn bestimmte Werte „übersprungen" werden sollen.
for (int i = 1; i <= 10; i++) {
if (i == 8) break; // bei 8 Schluss
if (i % 2 != 0) continue; // ungerade überspringen
System.out.println(i); // Ausgabe: 2 4 6
}
5) Verschachtelte Schleifen und die Endlosschleifen-Falle
Schleifen können verschachtelt werden – eine Schleife in einer anderen. Das brauchst du z.B. für 2D-Strukturen wie Tabellen oder Matrizen (siehe Arrays). Wichtig: bei 2 verschachtelten Schleifen á 100 Durchläufen sind das 10.000 Iterationen insgesamt – Performance beachten. Mehr dazu in O-Notation.
Die größte Falle bei Schleifen: Endlosschleifen. Wenn die Bedingung nie false wird, läuft die Schleife endlos – das Programm hängt. Typische Ursachen: Inkrement vergessen (i++ fehlt), falsche Bedingung (z.B. i > 0 wenn i abnimmt, sollte aber zunehmen), Bedingung wird im Schleifenkörper nicht beeinflusst. Hilfe im Notfall: in der IDE mit „Stop"-Button beenden, im Terminal mit Strg+C.
Zusammenfassung
Schleifen wiederholen Code-Blöcke. for (init; bedingung; schritt) – wenn Anzahl bekannt ist. while (bedingung) – solange Bedingung gilt (Test vor Durchlauf). do { ... } while (bedingung) – mindestens einmal ausführen (Test nach Durchlauf). break verlässt die Schleife, continue springt zum nächsten Durchlauf. Klassische Fallen: off-by-one (i < n vs i <= n), Endlosschleife (Bedingung wird nie false). Verschachtelte Schleifen für 2D-Strukturen.
