Optional.ofNullable()
Оборачивает значение, которое может быть `null`, в `Optional`.
Доступно с: Java 8
Синтаксис
static <T> Optional<T> ofNullable(T value)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| value | T | Значение, которое может быть `null`. |
Возвращаемое значение
Optional<T>`Optional` со значением или пустой, если передан `null`.
Примеры
Безопасная работа с результатом Map.get():
void main() {
Map<String, Integer> stock = Map.of("tea", 5);
int tea = Optional.ofNullable(stock.get("tea")).orElse(0);
int milk = Optional.ofNullable(stock.get("milk")).orElse(0);
IO.println(tea + " " + milk);
}Результат:
5 0Примечания
Это мост между старым кодом, который возвращает null, и цепочками map()/orElse(). Для простых случаев вроде словаря короче getOrDefault().
См. также
- Optional.of() — Создаёт `Optional` с непустым значением.
- Optional.empty() — Возвращает пустой `Optional` — «значения нет».
- Map.get() — Возвращает значение по ключу или `null`.
Вопросы и ответы по теме
В учебнике
- Optional — Класс Optional в Java: значение, которого может не быть, создание через of и empty, orElse, map, ifPresent и orElseThrow.