Verzweigungen: Unterschied zwischen den Versionen

Aus FI-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 1: Zeile 1:
Verzweigungen ermöglichen es, dass ein Programm abhängig von Bedingungen unterschiedliche Anweisungen ausführt.
Verzweigungen in Java ermöglichen es, dass ein Programm abhängig von Bedingungen unterschiedliche Anweisungen ausführt.
Dabei wird eine Bedingung ausgewertet, deren Ergebnis bestimmt, welcher Codeblock ausgeführt wird.
Das Programm prüft eine Bedingung und führt anschließend den passenden Codeblock aus.


== if-Anweisung ==   
== if-Anweisung ==   

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);