steam流listMap 如何去重、
时间: 2023-11-26 08:04:45 浏览: 78
Java中对List去重 Stream去重的解决方法
如果你想要对 Steam 流中的 `listMap` 进行去重操作,可以使用以下步骤:
1. 创建一个空的 `HashSet` 集合,用于存储不重复的 `listMap`。
2. 遍历 Steam 流中的 `listMap`,对于每个 `listMap`,将其添加到 HashSet 中。
3. 最后将 HashSet 转换为一个新的列表即可。
下面是一个示例代码,可以实现对 Steam 流中的 `listMap` 进行去重:
```
List<Map<String, Object>> originalListMap = Arrays.asList(
new HashMap<String, Object>() {{
put("id", 1);
put("name", "Alice");
}},
new HashMap<String, Object>() {{
put("id", 2);
put("name", "Bob");
}},
new HashMap<String, Object>() {{
put("id", 1);
put("name", "Alice");
}}
);
List<Map<String, Object>> distinctListMap = originalListMap.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(distinctListMap);
// output: [{id=1, name=Alice}, {id=2, name=Bob}]
```
在上面的代码中,我们将 `originalListMap` 中的第一个元素和第三个元素的内容相同,通过使用 Steam 的 `distinct()` 方法,可以将它们去重,最后得到一个新的不重复的 `List<Map<String, Object>>` 类型的列表。
阅读全文