Errors Einsteiger

null direkt als switch-Fall behandeln – keine separate Absicherung nötig.

✕ Java 8
// Must check before switch
if (status == null) {
    return "unknown";
}
return switch (status) {
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
✓ Java 21+
return switch (status) {
    case null    -> "unknown";
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
Problem mit diesem Code entdeckt? Sag uns Bescheid.
🎯

Explizit

Die null-Behandlung ist direkt im switch sichtbar.

🛡️

Kein NPE

Ein Switch auf einen null-Wert wirft keine NullPointerException.

📐

Alles in einem

Alle Fälle einschließlich null in einem einzigen Switch-Ausdruck.

Alter Ansatz
Prüfung vor dem Switch
Moderner Ansatz
case null
Seit JDK
21
Schwierigkeitsgrad
Einsteiger
null-Fall im switch
Verfügbar

Seit JDK 21 LTS allgemein verfügbar (Sept. 2023)

Pattern-Matching-Switch kann null als case-Label abgleichen. Dadurch entfällt die Null-Prüfung vor dem switch, und die Null-Behandlung wird explizit und sichtbar.

Teilen 𝕏 🦋 in