Junior — Middle
В кои случаи трябва да се прилага методът flatMap при обработка на колекции?
sobes.tech AI
Отговор от 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 помогает "развернуть" вложенные структуры и работать с элементами как с одним потоком.