我有一个hashmap,看起来像这样:
Map<String, ImageRecipeMap> contentIdToImageIdsMap = new HashMap<>();
我的ImageRecipeMap对象如下所示:
public class ImageRecipeMap {
private ContentType contentType;
private List<String> imageIds;
public List<String> getImageIds() {
return imageIds;
}
public void setImageIds(List<String> imageIds) {
this.imageIds = imageIds;
}
...
}
我想获取所有ImageID列表,并使用Java8流创建一个总的ImageID列表。到目前为止,这就是我所拥有的,但我的collect上似乎有一个编译错误:
List<String> total = contentIdToImageIdsMap.values().stream()
.map(value -> value.getImageIds())
.collect(Collectors.toList());
您的解决方案返回列表
List<String> total = contentIdToImageIdsMap.values().stream()
.flatMap(value -> value.getImageIds().stream())
.collect(Collectors.toList());
。flatMap()
更改流
如何用Java解析JSON文件中的数据?
问题内容: 我正在用Java写一个简单的编辑文本。当用户打开文件时,将在中打开文件。我执行以下操作来保存打开的文件: 将从何处接收值,例如:。 我有一堂课: 现在,在此类中,我需要获取存储在中的值。我怎样才能做到这一点? 问题答案: 要从地图获取所有值: 要从地图中获取所有条目,请执行以下操作: Java 8更新: 处理所有值: 要处理所有条目:
为了最大限度地利用java8流和Spring4,我在来自Springs jsdbRestTem板的JDBC结果集上使用了流API,如下所示(代码缩短并简化): 这似乎很有效。客户端可以像这样使用流Api,而不用担心jdbc类 但是,当我重构(尝试将流提供给客户端方法)时,像这样: 我明白了 因此,数据似乎只能在方法。是否有一种干净的方法可以绕过这个问题,返回来自DB的元素的惰性流?假设具体化结果和
我有一个映射“m”和一个列表“l”,现在我想从那个映射“m”中获取值,使用“l”中可用的键列表。我想用Java 8流的概念,任何人都可以在这方面提供帮助。 我编码打印这些值,但我需要的是将值放入列表中 list.stream().foreach(s->{system.out.println(map.get(s));});
例如: 如何在Java8 Stream中实现上述代码?
代码: 输出: