Verzweigungen: Unterschied zwischen den Versionen
Aus FI-Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
Verzweigungen in Java ermöglichen es, dass ein Programm abhängig von Bedingungen unterschiedliche Anweisungen ausführt. | |||
Das Programm prüft eine Bedingung und führt anschließend den passenden Codeblock aus. | |||
== if-Anweisung == | |||
Führt einen Block aus, wenn die Bedingung wahr ist. | Führt einen Block aus, wenn die Bedingung wahr ist. | ||
| Zeile 11: | Zeile 12: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== if-else-Anweisung == | |||
Führt einen alternativen Block aus, wenn die Bedingung | Führt einen alternativen Block aus, wenn die Bedingung '''nicht''' wahr ist. | ||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
| Zeile 23: | Zeile 24: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== if-else if-Kette == | |||
Für mehrere Bedingungen nacheinander. | Für mehrere Bedingungen nacheinander. | ||
| Zeile 39: | Zeile 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== switch-Anweisung == | |||
Geeignet für die Auswahl aus mehreren festen Werten. | Geeignet für die Auswahl aus mehreren festen Werten. | ||
| Zeile 60: | Zeile 61: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== switch mit String == | |||
Seit Java 7 auch mit `String` möglich. | Seit Java 7 auch mit `String` möglich. | ||
| Zeile 77: | Zeile 78: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Ternärer Operator (?:) == | |||
Kurzform für einfache if-else-Ausdrücke. | Kurzform für einfache if-else-Ausdrücke. | ||
Syntax: `Bedingung ? Ausdruck_wenn_true : Ausdruck_wenn_false` | Syntax: `Bedingung ? Ausdruck_wenn_true : Ausdruck_wenn_false` | ||
| Zeile 89: | Zeile 88: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Neue switch-Expression (ab Java 14) == | |||
Erlaubt kompaktere und ausdrucksstärkere Schreibweise. | Erlaubt kompaktere und ausdrucksstärkere Schreibweise. | ||
Nutzen von `->`, mehreren Labels, und `yield`. | Nutzen von `->`, mehreren Labels, und `yield`. | ||
| Zeile 119: | Zeile 118: | ||
System.out.println(zeit); | System.out.println(zeit); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Kategorie:Programmieren]] | |||
[[Kategorie:Semester1]] | |||
Aktuelle Version vom 11. Januar 2026, 16:47 Uhr
Verzweigungen in Java ermöglichen es, dass ein Programm abhängig von Bedingungen unterschiedliche Anweisungen ausführt. Das Programm prüft eine Bedingung und führt anschließend den passenden Codeblock aus.
if-Anweisung
Führt einen Block aus, wenn die Bedingung wahr ist.
int zahl = 10;
if (zahl > 0) {
System.out.println("Die Zahl ist positiv.");
}
if-else-Anweisung
Führt einen alternativen Block aus, wenn die Bedingung nicht wahr ist.
int zahl = -5;
if (zahl >= 0) {
System.out.println("Die Zahl ist positiv oder null.");
} else {
System.out.println("Die Zahl ist negativ.");
}
if-else if-Kette
Für mehrere Bedingungen nacheinander.
int note = 3;
if (note == 1) {
System.out.println("Sehr gut");
} else if (note == 2) {
System.out.println("Gut");
} else if (note == 3) {
System.out.println("Befriedigend");
} else {
System.out.println("Andere Note");
}
switch-Anweisung
Geeignet für die Auswahl aus mehreren festen Werten.
int tag = 3;
switch (tag) {
case 1:
System.out.println("Montag");
break;
case 2:
System.out.println("Dienstag");
break;
case 3:
System.out.println("Mittwoch");
break;
default:
System.out.println("Ein anderer Tag");
break;
}
switch mit String
Seit Java 7 auch mit `String` möglich.
String farbe = "blau";
switch (farbe) {
case "rot":
System.out.println("Farbe ist rot");
break;
case "blau":
System.out.println("Farbe ist blau");
break;
default:
System.out.println("Unbekannte Farbe");
}
Ternärer Operator (?:)
Kurzform für einfache if-else-Ausdrücke. Syntax: `Bedingung ? Ausdruck_wenn_true : Ausdruck_wenn_false`
int zahl = 5;
String ergebnis = (zahl % 2 == 0) ? "Gerade" : "Ungerade";
System.out.println(ergebnis);
Neue switch-Expression (ab Java 14)
Erlaubt kompaktere und ausdrucksstärkere Schreibweise. Nutzen von `->`, mehreren Labels, und `yield`.
int tag = 2;
String wochentag = switch (tag) {
case 1 -> "Montag";
case 2 -> "Dienstag";
case 3 -> "Mittwoch";
case 4, 5 -> "Donnerstag oder Freitag";
default -> "Wochenende";
};
System.out.println(wochentag);
Oder mit Block und `yield`:
int stunde = 14;
String zeit = switch (stunde) {
case 6, 7, 8, 9 -> "Morgen";
case 12, 13, 14 -> {
System.out.println("Mittagspause!");
yield "Mittag";
}
default -> "Andere Tageszeit";
};
System.out.println(zeit);
