Rai*_*ipe 6 java java-8 java-stream
收集后如何继续流映射:
public Bus createBus(List<String> passengers) {
return passengers.stream()
.map(name -> new Person(name))
.collect(Collectors.toList())
.map(personList -> new Bus(personList))
}
Run Code Online (Sandbox Code Playgroud)
以上显然行不通。如何在不使用方法体中的任何变量的情况下使其优雅地工作?
编辑:构造函数是总线(列出人员)。
您可以使用 Collectors.collectingAndThen 中的Collector执行额外的整理转换:
public Bus createBus(List<String> passengers) {
return passengers.stream()
.map(name -> new Person(name))
.collect(Collectors
.collectingAndThen(Collectors.toList(), Bus::new));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1971 次 |
| 最近记录: |