Практика с контейнером Optional в Java
Задачи опираются на приёмы раздела: of и
ofNullable, empty, проверки,
orElse и orElseGet, map,
flatMap, filter.
Метод Optional<String> firstNonBlank(String a, String b)
должен вернуть первую непустую строку после удаления
пробелов по краям. Если подходящей строки нет,
верните пустой контейнер. Проверьте пару
" x" с null и две пустые строки.
Для строк "144" и "-9"
получите квадратный корень только от неотрицательного
числа. Если корень получить нельзя, выведите
-1.0.
Класс User хранит телефон в контейнере.
Метод String contact(User u) должен вернуть
номер или строку "no phone". Создайте
пользователя без телефона и выведите результат.
Даны строки:
String a = "1";
String b = "2";
String c = "x";
Метод Optional<Integer> parse(String s)
не должен выбрасывать исключение наружу: для
нецифровой строки он возвращает пустой контейнер.
Получите сумму первых двух успешных разборов,
а если разбор оборвался, выведите 0.
Для пустого контейнера выбросьте исключение
IllegalStateException с сообщением
"missing" и поймайте его, напечатав
текст исключения. Для непустого контейнера
выведите значение.