Какая типичная ошибка при работе с map vs flatMap и как ее избежать?
Что хотят услышать интервьюеры:
Ошибка: получать Stream<Stream<T>> вместо Stream<T>.
Ответ:
Как избежать: вернитесь к контракту и назначению темы: map преобразует элемент в элемент, flatMap разворачивает вложенный поток. Проверьте edge cases: null, конкурентный доступ, транзакции, ошибки, объем данных и lifecycle Spring/JVM.
Хороший кандидат: объясняет симптом, причину и безопасное исправление, а не просто вспоминает термин.
orders.stream().flatMap(o -> o.items().stream()).toList();