Как правильно применять Optional map/flatMap/orElseGet в реальном Java/Spring проекте?

JavaJuniorStreams, Lambda и Functional JavaПрактикаjava|streamslambda и functional java|optional|optional map/flatmap/orelseget

Что хотят услышать интервьюеры:

Практический подход: используйте Optional map/flatMap/orElseGet там, где он решает конкретную задачу, а не ради моды.

  • Определите слой: domain, application, infrastructure или API.
  • Проверьте влияние на транзакции, потокобезопасность, тесты и поддержку.
  • Зафиксируйте контракт через тест или явно описанный API.

Ответ:

На собеседовании: сильный ответ показывает trade-off и production-последствия. Риск: использовать orElse с дорогим вычислением вместо orElseGet.

userOpt.map(User::email).orElse("unknown");

Источники

Похожие вопросы