🚀 Используем Optional правильно в Java Сегодня разберем Optional – мощный инструмент, который помогает избежать NullPointerException.
Сегодня разберем Optional – мощный инструмент, который помогает избежать NullPointerException. Но многие используют его неправильно! Давайте посмотрим, как его применять эффективно.
❌ Как делать НЕ надо:
Optional<String> optional = Optional.ofNullable(getValue());
if (optional.isPresent()) {
System.out.println(optional.get());
}
Почему плохо?
- get() без проверки – потенциальная ловушка.
- Лишний if – можно сделать проще.
✅ Как надо:
Optional.ofNullable(getValue()).ifPresent(System.out::println);
или, если нужно значение по умолчанию:
String value = Optional.ofNullable(getValue()).orElse("Default Value");
Крутые приемы с Optional:
✔ orElseGet – лениво вычисляет значение
✔ orElseThrow – выбрасывает исключение, если Optional пуст
✔ map и flatMap – позволяют трансформировать данные
🔥 Советы:
1️⃣ Не используйте Optional для полей классов – это не сериализуемо.
2️⃣ Не передавайте Optional в аргументах методов – это антипаттерн.
3️⃣ Optional хорош для возвращаемых значений – используйте его вместо null.
👉 @BookJava