Sobes.tech
Junior — Middle
141

¿En qué casos se debe aplicar el método flatMap en el procesamiento de colecciones?

Empresas donde se preguntó
СБЕРСБЕР

Respuesta de la IA

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 помогает "развернуть" вложенные структуры и работать с элементами как с одним потоком.