Optional<T> (Java 8+) je kontejner koji može ili ne mora sadržavati vrijednost — eksplicitan način da se predstavi "vrijednost može biti odsutna" umjesto da se vrati null. Pomaže u sprječavanju strašne NullPointerException (NPE) prisiljavajući pozivatelje da razmotre slučaj praznog stanja.
Problem: null i NPEs
User {
userMap.get(id);
}
findUser();
u.getName();
