Switch içinde null durumu
null değerini doğrudan bir switch durumu olarak işleyin — ayrı koruma gerekmez.
Kod Karşılaştırması
✕ 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";
};
Bu kodda bir sorun mu gördünüz? Bize bildirin.
Modern yöntem neden daha iyi
Açık
null işleme doğrudan switch içinde görünür.
NPE yok
null değer üzerinde switch, NullPointerException fırlatmaz.
Hepsi bir arada
null dahil tüm durumlar tek bir switch ifadesinde.
Eski Yaklaşım
Switch Öncesi Koruma
Modern Yaklaşım
case null
JDK'dan itibaren
21
Zorluk
Başlangıç
JDK Desteği
Switch içinde null durumu
Mevcut
JDK 21 LTS'den itibaren geniş çapta kullanılabilir (Eylül 2023)
Nasıl çalışır
Örüntü eşleştirme switch, null değerini bir durum etiketi olarak eşleştirebilir. Bu, switch öncesinde null kontrolüne olan ihtiyacı ortadan kaldırır ve null işlemeyi açık ve görünür kılar.
İlgili Belgeler