Назад к вопросам
СБЕР
Junior — Middle
97
В каких случаях следует применять метод flatMap в обработке коллекций?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Метод flatMap применяется, когда нужно обработать коллекцию, элементы которой сами являются коллекциями (или опциональными значениями), и получить из них один плоский поток элементов.
Например, если у вас есть список списков, и вы хотите получить один список всех элементов, а не список списков.
Пример:
List<List<String>> listOfLists = Arrays.asList(
Arrays.asList("a", "b"),
Arrays.asList("c", "d")
);
List<String> flatList = listOfLists.stream()
.flatMap(Collection::stream) // превращаем Stream<List<String>> в Stream<String>
.collect(Collectors.toList());
// flatList будет содержать: ["a", "b", "c", "d"]
Таким образом, flatMap помогает "развернуть" вложенные структуры и работать с элементами как с одним потоком.