Встречается на собеседованиях • сегодня
В чем разница между Optional и проверкой Nullable через if/else
Optional - это контейнерный объект, который может содержать или не содержать значение, предоставляя более элегантный и функциональный способ обработки возможного null. Основные отличия от if/else:
- Явность:
Optionalявно показывает, что значение может отсутствовать - Функциональный стиль: позволяет использовать методы
map(),filter(),orElse() - Защита от NPE: не дает забыть проверить на
null
Пример:
java
// С Optional
String result = Optional.ofNullable(value)
.map(String::toUpperCase)
.orElse("DEFAULT");
// С if/else
String result;
if (value != null) {
result = value.toUpperCase();
} else {
result = "DEFAULT";
}Optional предпочтительнее для:
- Возвращаемых значений методов
- Цепочки преобразований
- Явного указания на возможное отсутствие значения
Но не стоит использовать Optional для:
- Параметров методов
- Поля класса
- Коллекций (лучше возвращать пустую коллекцию)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы