user → address → city — классическая ловушка для NullPointerException. Вложенные проверки if (x != null) быстро разрастаются, и легко пропустить один из уровней.✅
Optional:findByEmail(email)
.map(User::getAddress)
.map(Address::getCity)
.orElse("unknown");
Если
Optional в API нет, достаточно одной проверки:if (user == null || user.getAddress() == null)
Такой подход читается лучше, чем множество разбросанных
null-проверок, из-за которых сложно понять, какое именно значение может отсутствовать.#Java #NullSafety
👉 Java Portal
