使用流API将arraylist添加到arraylist
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用流API将arraylist添加到arraylist相关的知识,希望对你有一定的参考价值。
有一个生成ArrayList的方法:
List<Entity> method (String s){
........
return list;
}
如何使用流API从List集合中收集List? (类似于newList.addAll(list);
List<String> stringList = someGenerateStrings();
List<Entity> newList = stringList.stream()
.map(this::method)
.collect(?)
答案
首先,您需要将列表流展平为列表元素流。你可以使用Stream
's flatMap
method:
返回一个流,该流包含将此流的每个元素替换为通过将提供的映射函数应用于每个元素而生成的映射流的内容的结果。
这基本上将你创造的内部Stream
s中的元素带入主要的Stream
。
.flatMap(p -> method(p).stream())
然后它就像收集到List
一样简单。
.collect(Collectors.toList());
以上是关于使用流API将arraylist添加到arraylist的主要内容,如果未能解决你的问题,请参考以下文章
纯并行添加的Java ArrayList.add() 方法线程安全吗? [复制]