我有一张大地图,其中包含不同的键和多个值(DepthFeed)。我希望得到任何值(DepthFeed),以便能够为每个键提取一个仪器的名称。
我有这张地图
private static Map<Integer, List<DepthFeed>> mapDepthFeed = new HashMap<>();
从那以后我想做类似的事情,但是不返回键集整数。相反,我想要一个List<DepthFeed>
后面(每个键包含一行)
List<DepthFeed> d = mapPriceFeed.values().stream().distinct().collect(Collectors.toList());
答案 0 :(得分:2)
使用
List<DepthFeed> result = mapDepthFeed.values().stream()
.filter(list -> !list.isEmpty())
.map(list -> list.get(0))
.collect(Collectors.toList());
这样,您将从地图值中存储的每个非空列表中获取第一个元素。