溫馨提示×

java flatmap的用法是什么

小億
160
2023-11-22 23:24:35
欄目: 編程語言

在Java中,flatMap是一個常見的函數式編程操作,用于將嵌套的集合結構(多維數組、嵌套列表等)轉化為一個扁平的集合。

具體來說,flatMap接受一個函數作為參數,該函數將原始集合中的每個元素轉換為一個新的集合,并將這些新的集合合并成一個單一的扁平集合。這個操作可以減少集合的維度,并將多個嵌套層級的元素展開成一個單層級的集合。

以下是一個使用flatMap的示例代碼:

List<List<Integer>> nestedList = Arrays.asList(
    Arrays.asList(1, 2, 3),
    Arrays.asList(4, 5, 6),
    Arrays.asList(7, 8, 9)
);

List<Integer> flatList = nestedList.stream()
                                  .flatMap(List::stream)
                                  .collect(Collectors.toList());

System.out.println(flatList); // 輸出 [1, 2, 3, 4, 5, 6, 7, 8, 9]

在上述代碼中,nestedList是一個包含多個嵌套列表的集合。通過使用flatMap操作,我們可以將這個嵌套的結構轉換為一個扁平的集合flatList。flatMap(List::stream)將每個嵌套列表轉換為一個流,并將這些流合并為一個單一的流,最終使用collect(Collectors.toList())將流收集為一個List。

總之,flatMap可以幫助我們將嵌套的集合結構轉換為一個扁平的集合,簡化集合操作的邏輯。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女