Sobes.tech
Junior — Middle
139

Kokiais atvejais turėtume taikyti flatMap metodą kolekcijų apdorojimui?

Įmonės kur klausė
СБЕРСБЕР

Atsakymas iš AI

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