Java8flatMap()合并多个list为一个list
程序员文章站
2022-05-05 08:46:51
...
- flatMap()是将函数应用于RDD中的每个元素,将返回的迭代器的所有内容构成新的RDD,这样就得到了一个由各列表中的元素组成的RDD,而不是一个列表组成的RDD。(将几个小list合并到一个list中)
// 例一 List<Integer> list = ImmutableList.of(1, 3, 5); list = list.stream().flatMap(l -> { List<Integer> list1 = new ArrayList<>(); list1.add(l + 1); list1.add(l + 2); return list1.stream(); }).collect(Collectors.toList()); System.out.println(list);// [2, 3, 4, 5, 6, 7] // 例二 List<List<Map<String,Object>>> lists = ImmutableList.of( ImmutableList.of( ImmutableMap.of("a", 1, "b", 2), ImmutableMap.of("a", 2, "b", 3) ), ImmutableList.of( ImmutableMap.of("a", 3, "b", 4), ImmutableMap.of("a", 4, "b", 5) ), ImmutableList.of( ImmutableMap.of("a", 5, "b", 6), ImmutableMap.of("a", 6, "b", 7) ) ); // 将多个list合并为一个list List<Map<String,Object>> list = lists.stream().flatMap(Collection::stream).collect(Collectors.toList());// [{a=1, b=2}, {a=2, b=3}, {a=3, b=4}, {a=4, b=5}, {a=5, b=6}, {a=6, b=7}]
上一篇: 幻影粒子中的文字怎么替换成别的文字?
推荐阅读
-
Python win32com模块 合并文件夹内多个docx文件为一个docx
-
python中将一个全部为int的list 转化为str的list方法
-
Java IO 合并多个二进制文件为一个二进制文件
-
Python将多个list合并为1个list的方法
-
jdk8使用stream实现两个list集合合并成一个(对象属性的合并)
-
Python win32com模块 合并文件夹内多个docx文件为一个docx
-
Java8flatMap()合并多个list为一个list
-
递归一个List
,可自己根据需要改造为通用型。 -
Unity 如何判断一个c#对象是否为List ?
-
jdk8使用stream实现两个list集合合并成一个(对象属性的合并)