Привет.
Решил погуглить, как красиво избежать цепочек проверки на null if-ами в Java 8.
http://winterbe.com/posts/2015/03/15/av ... s-in-java/Вот тут в конце предлагают написать свою функцию:
Код:
public static <T> Optional<T> resolve(Supplier<T> resolver) {
try {
T result = resolver.get();
return Optional.ofNullable(result);
}
catch (NullPointerException e) {
return Optional.empty();
}
}
И юзать её так:
Код:
Outer obj = new Outer();
resolve(() -> obj.getNested().getInner().getFoo());
.ifPresent(System.out::println);
Почему в Java 8 нет стандартного такого reslolve где-нибудь (в том же Optional) - непонятно.
Мб разработчикам добавить что-то такое в Utils?