Sobes.tech
Junior — Middle

V ktorých prípadoch by sa mala použiť metóda flatMap pri spracovaní kolekcií?

sobes.tech AI

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