Optional (в Java)
От: mbait  
Дата: 12.12.17 21:00
Оценка:
Помогает ли в чём-нибудь? Я думал, что в случае вызова Optional::get() c отсутствующей ссылкой (null) выбрасывается проверямое исключение, что заставляет оборачивать каждый вызов get() в try/catch, что в свою очередь гарантирует, что любое обращение к объекту будет проверять случай отсутствия ссылки. Но там RuntimeException, поэтому ничего не мешает вызывающему get() забыть сделать проверку и вместо NullPointerException получить NoSuchElementException.

Единственное преимущество, которое я нашёл, это более короткий синтаксис в случае, когда надо нулевую ссылку заменить значением по-умолчанию. В этом случае пишется что-то вроде Optional.ofNullable(maybeNullable).orElse(nonNullable).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.