Objects.requireNonNullElse()
Üçlü operatöre gerek kalmadan net bir varsayılanla null olmayan değer elde edin.
Kod Karşılaştırması
✕ Java 8
String name = input != null
? input
: "default";
// easy to get the order wrong
✓ Java 9+
String name = Objects
.requireNonNullElse(
input, "default"
);
Bu kodda bir sorun mu gördünüz? Bize bildirin.
Modern yöntem neden daha iyi
Net niyet
Metod adı tam olarak ne yaptığını açıklar.
Null güvenli varsayılan
Varsayılan değer de null açısından kontrol edilir.
Okunabilir
Basit null-ya-da-varsayılan mantığı için üçlü operatörden daha iyidir.
Eski Yaklaşım
Üçlü Null Kontrolü
Modern Yaklaşım
requireNonNullElse()
JDK'dan itibaren
9
Zorluk
Başlangıç
JDK Desteği
Objects.requireNonNullElse()
Mevcut
JDK 9'dan itibaren geniş çapta kullanılabilir (Eylül 2017)
Nasıl çalışır
requireNonNullElse, ilk argüman null değilse onu döndürür, aksi takdirde ikinciyi döndürür. Varsayılanın kendisi null olamaz — her ikisi de null ise NPE fırlatarak hataları erken yakalar.
İlgili Belgeler