Какие последствия возникнут, если из Optional-объекта вернуть null и затем вызвать метод get?

Если из Optional вернуть null (например, Optional.of(null)), это приведет к NullPointerException при создании Optional, так как of не допускает null.

Короткий ответ

Что ответить на собеседовании

Если из Optional вернуть null (например, Optional.of(null)), это приведет к NullPointerException при создании Optional, так как of не допускает null.

Подробный разбор

Ответ с пояснениями

Если из Optional вернуть null (например, Optional.of(null)), это приведет к NullPointerException при создании Optional, так как of не допускает null.

Если же Optional пустой (Optional.empty()) и затем вызвать метод get(), то будет выброшено исключение NoSuchElementException, так как значения нет.

Поэтому:

  • Никогда не передавайте null в Optional.of().
  • Перед вызовом get() нужно проверять наличие значения через isPresent() или использовать методы с обработкой отсутствия значения (orElse, orElseGet).

Пример:

Optional<String> opt = Optional.ofNullable(null); // создаст пустой Optional
opt.get(); // выбросит NoSuchElementException

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее