Bedingungen & Schleifen
Bedingungen und Schleifen steuern den Programmablauf — mit derselben Grundidee wie überall, aber typsicher.
Ansicht
01
Verstehen
Lies die Kernidee und das Beispiel.
02
Prüfen
Beantworte die Aktiv-Checks.
03
Anwenden
Setze die Transferaufgabe um.
Mini-Erfolg
Dein Programm gibt für drei verschiedene Punktzahlen die richtige Rückmeldung aus.
Warum das wichtig ist: Erst mit Bedingungen reagiert dein Programm auf Eingaben. Mit Schleifen wird es fleißig statt lang.
Vorher hilfreich
Lerninhalt
Verstehen & anwenden
if / else
if erwartet in Java zwingend einen boolean — Zahlen oder Strings sind keine Bedingungen.
else if und else decken weitere Fälle ab.
int punkte = 85;
if (punkte >= 90) {
System.out.println("Sehr gut");
} else if (punkte >= 50) {
System.out.println("Bestanden");
} else {
System.out.println("Nicht bestanden");
}Schleifen
Die for-Schleife zählt mit Start, Bedingung und Schritt.
while prüft vor jedem Durchlauf, do-while mindestens einmal danach.
Die for-each-Schleife durchläuft Arrays und Collections direkt.
for (int i = 1; i <= 3; i++) {
System.out.println(i);
}
String[] farben = {"rot", "gruen"};
for (String farbe : farben) {
System.out.println(farbe);
}switch
switch vergleicht einen Wert gegen mehrere Fälle.
Moderne switch-Ausdrücke mit Pfeilen vermeiden das break und liefern direkt Werte.
String kategorie = switch (note) {
case 1, 2 -> "gut";
case 3, 4 -> "okay";
default -> "lernen!";
};Vertiefung
Bedingungen lesbar halten
if/else wird schnell unübersichtlich, wenn viele Fälle in einer langen Kette stehen. Ein switch-Ausdruck oder eine kleine Hilfsmethode macht die Absicht klarer.
Bei Schleifen sind drei Dinge entscheidend: Startwert, Abbruchbedingung und Veränderung. Fehlt eine davon oder ist sie falsch, entsteht eine Endlosschleife oder ein Off-by-one-Fehler.
int punkte = 85;
String note = switch (punkte / 10) {
case 10, 9 -> "sehr gut";
case 8 -> "gut";
case 7 -> "befriedigend";
default -> "üben";
};
System.out.println(note);Merksatz: Wähle die Kontrollstruktur nach Lesbarkeit, nicht nach Gewohnheit. Jede Schleife braucht ein klares Ende.
Übungsaufgabe
Notenampel
Gib für eine Punktzahl von 0 bis 100 eine Rückmeldung aus: ab 90 „sehr gut“, ab 70 „gut“, ab 50 „bestanden“, sonst „nochmal üben“. Prüfe außerdem ungültige Werte.
Das soll dein Programm können
- if/else oder switch
- Ungültige Werte unter 0 oder über 100 abfangen
- Mindestens vier Fälle
- Eine Schleife, die drei Beispielwerte testet
Schreibe den Code hier oder in deiner IDE und vergleiche ihn dann mit der Lösung.
Dein Code wird automatisch auf diesem Gerät gespeichert.
Hinweis anzeigen
Prüfe zuerst den ungültigen Bereich. Danach kannst du von oben nach unten die Grenzen abarbeiten.
Lösung anzeigen
public class Notenampel {
public static void main(String[] args) {
int[] punkte = {95, 72, 45};
for (int wert : punkte) {
if (wert < 0 || wert > 100) {
System.out.println(wert + ": ungültig");
} else if (wert >= 90) {
System.out.println(wert + ": sehr gut");
} else if (wert >= 70) {
System.out.println(wert + ": gut");
} else if (wert >= 50) {
System.out.println(wert + ": bestanden");
} else {
System.out.println(wert + ": nochmal üben");
}
}
}
}Warum funktioniert das?
Die Reihenfolge der Bedingungen ist wichtig: Die höchste Grenze muss zuerst geprüft werden, sonst würde 95 bereits bei >= 70 hängen bleiben.
Aktiv-Check
Teste dein Verständnis
Erkennen: Welcher Abschnitt passt?
Welcher Abschnitt passt zu diesen Begriffen?
Spaßprojekt
Zahlenratespiel
Baue ein Spiel, das eine geheime Zahl speichert und bei jedem Tipp „zu hoch“, „zu niedrig“ oder „richtig“ ausgibt.
Selbstcheck
Kann ich das schon?
Hake ab, was du wirklich erklären oder selbst bauen könntest.
Fortschritt
Bereit zum Abschließen?
Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.