flatmap使用
使用场景
适用于嵌套list数据结构,想把内部的list数据合并成一个list.。
举例如下:
public class Test {
public static void main(String[] args) {
List<List<String>> list = new ArrayList<>();
List<String> list1 = new ArrayList<>();
list1.add("a");
list1.add("b");
list1.add("c");
List<String> list2 = new ArrayList<>();
list2.add("1");
list2.add("2");
list2.add("3");
list.add(list1);
list.add(list2);
List<String> flatList = list.stream().flatMap(l -> l.stream()).collect(Collectors.toList());
System.out.println(flatList.size());
System.out.println(flatList);
}
}
上图所示外层list的元素为list类型,目标是将内部所有list元素扁平化,构建出一个包含所有元素的list。运行结果如下: