use*_*256 1 java java-8 java-stream
我有 3 个列表,List<List<List<Product>>
我想将它们合并为一个。我已经阅读了几篇 SO 文章,但我仍然不确定如何继续。到目前为止我有
allProducts.stream()
.flatMap(List::Stream)
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
但这只会合并两个列表,对吗?在该语句中合并所有三个的最佳方法是什么?我见过reduce()
用过,但我不知道怎么写。我需要获得Product
.
您需要链接 2flatMap
秒:
allProducts.stream() // Stream<List<List<Product>>>
.flatMap(List::stream) // Stream<List<Product>>
.flatMap(List::stream) // Stream<Product>
.collect(Collectors.toList()); // List<Product>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
109 次 |
最近记录: |