Stream.ofNullable()
Twórz strumień z zero lub jednym elementem z wartości mogącej być null.
Porównanie kodu
✕ Java 8
Stream<String> s = val != null
? Stream.of(val)
: Stream.empty();
✓ Java 9+
Stream<String> s =
Stream.ofNullable(val);
Widzisz problem z tym kodem? Daj nam znać.
Dlaczego nowoczesne podejście wygrywa
Zwięzłość
Jedno wywołanie zastępuje trójkowy warunek.
Przyjazny dla flatMap
Idealny wewnątrz flatMap do pomijania wartości null.
Bezpieczny pod kątem null
Brak ryzyka NPE — null staje się pustym strumieniem.
Stare podejście
Sprawdzenie null
Nowoczesne podejście
ofNullable()
Od JDK
9
Poziom trudności
Początkujący
Wsparcie JDK
Stream.ofNullable()
Dostępne
Szeroko dostępne od JDK 9 (wrzesień 2017)
Jak to działa
Stream.ofNullable() zwraca strumień jednoelementowy jeśli wartość jest nie-null, lub pusty strumień jeśli null. Eliminuje wzorzec trójkowego sprawdzenia null.
Powiązana dokumentacja
Dowód