Rozdział 6. Typ Optional

Ech, czemu dyskusja o Optional zawsze wymaga 300 maili?

Brian Goetz, lista mailingowa lambda-libs-spec-experts

23 października 2013 r.

W API Javy 8 wprowadzono nową klasę o nazwie java.util.Optional<T>. Choć wielu programistów myśli, że klasa ta ma za zadanie wyeliminować wyjątki NullPointerException z kodu źródłowego, rzeczywistość wygląda inaczej. Podstawowym zadaniem typu Optional jest informowanie użytkownika, kiedy zwrócona wartość legalnie może być null. Taka sytuacja może się zdarzyć w przypadku filtrowania strumienia wartości na podstawie jakiegoś warunku, który nie pozostawia żadnych elementów.

W API Stream następujące metody zwracają Optional, jeśli w strumieniu nie pozostaje ani jeden element: reduce,

Get Nowoczesne receptury w Javie now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.