Я продолжаю писать специальные исключения в случае, если опция отсутствует.
Например:
Optional<?> optional = ...;
if (!optional.isPresent()) {
throw new MyException();
}
Object result = optional.get();
Я нахожу этот код не очень бегло, особенно использование взрыва (!). Я бы предпочел написать что-то вроде:
Optional<?> optional = ...;
Object result = optional.orThrow(MyException.class);
Есть ли такой ярлык в Guava, который я еще не нашел?