Sobes.tech
Junior — Middle
93

Kannst du ein Beispiel für die Verwendung der Methode flatMap in der Stream API zur Verarbeitung von Sammlungen zeigen?

Unternehmen wurden gefragt
Тетрасофт

Antwort von AI

sobes.tech KI

Метод flatMap в Stream API используется для преобразования каждого элемента потока в другой поток и последующего объединения всех этих потоков в один.

Это полезно, когда у вас есть коллекция коллекций, и вы хотите получить один плоский поток всех элементов.

Пример: есть список списков строк, нужно получить один список всех строк:

import java.util.*;
import java.util.stream.*;

public class FlatMapExample {
    public static void main(String[] args) {
        List<List<String>> listOfLists = Arrays.asList(
            Arrays.asList("apple", "banana"),
            Arrays.asList("orange", "pear"),
            Arrays.asList("grape")
        );

        List<String> flatList = listOfLists.stream()
            .flatMap(Collection::stream) // преобразуем каждый внутренний список в поток и объединяем
            .collect(Collectors.toList());

        System.out.println(flatList); // [apple, banana, orange, pear, grape]
    }
}

Здесь flatMap раскрывает вложенные списки в один поток элементов.