Исключения, особенно проверенные, могут серьезно прервать поток логики программы, когда идиома FP используется в Java 8. Вот произвольный пример:
String s1 = "oeu", s2 = "2";
Stream.of(s1, s2).forEach(s -> 
    System.out.println(Optional.of(s).map(Integer::parseInt).get()));
Вышеприведенный код разбивается, когда существует исключение для неповторяемой строки. Но скажу, что я просто хочу заменить это значением по умолчанию, как я могу с помощью Optional:
Stream.of(s1, s2).forEach(s -> 
   System.out.println(Optional.of(s)
                              .map(Integer::parseInt)
                              .orElse(-1)));
Конечно, это все еще не получается, потому что Optional обрабатывает только null s. Я хотел бы что-то следующее:
Stream.of(s1, s2).forEach(s ->
    System.out.println(
        Exceptional.of(s)
                   .map(Integer::parseInt)
                   .handle(NumberFormatException.class, swallow())
                   .orElse(-1)));
Примечание.. Это вопрос, ответивший на вопрос.