【发布时间】:2018-03-25 13:32:18
【问题描述】:
我有一张地图 Map<LocalDate, Map<LocalDate, List<Request>>>,我想将其转换为 Set<String>,String 是使用 Java8 的 Request 类中的 id
请求类
class Request{
private String id;
public void setId(String id){
this.id =id;
}
public String getId(){
return this.id;
}
}
我知道这样做的传统方式,但希望使用 Java 8 选项(Stream、Map、Collect..)来实现这一点
我在尝试这个,得到编译错误
Set<String> values = map.values().stream()
.map(dateMap -> dateMap.values().stream()
.map(request -> request.stream()
.map(Request::getId)).flatMap(Set::stream).collect(Collectors.toSet()));
谢谢
【问题讨论】:
-
向我们展示您的尝试,我们不是代码交付服务
-
@LukeGarrigan,我错过了,现在添加。
标签: java java-8 java-stream