Switch-Ausdrücke
Switch als Ausdruck, der einen Wert zurückgibt – kein break, kein Fall-Through.
Code-Vergleich
✕ Java 8
String msg;
switch (day) {
case MONDAY:
msg = "Start";
break;
case FRIDAY:
msg = "End";
break;
default:
msg = "Mid";
}
✓ Java 14+
String msg = switch (day) {
case MONDAY -> "Start";
case FRIDAY -> "End";
default -> "Mid";
};
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Gibt einen Wert zurück
Das Switch-Ergebnis direkt zuweisen – keine temporäre Variable nötig.
Kein Fall-Through
Pfeilsyntax eliminiert versehentliche Fall-Through-Fehler durch fehlendes break.
Erschöpfungsprüfung
Der Compiler stellt sicher, dass alle Fälle abgedeckt sind.
Alter Ansatz
Switch-Anweisung
Moderner Ansatz
Switch-Ausdruck
Seit JDK
14
Schwierigkeitsgrad
Einsteiger
JDK-Unterstützung
Switch-Ausdrücke
Verfügbar
Seit JDK 14 allgemein verfügbar (März 2020)
Wie es funktioniert
Switch-Ausdrücke geben einen Wert direkt zurück, verwenden Pfeilsyntax zur Vermeidung von Fall-Through-Fehlern, und der Compiler prüft die Erschöpfung. Dies ersetzt die fehleranfällige Anweisungsform.
Zugehörige Dokumentation