有一个Map<String,List<int>>类型的数据 怎么把map里面的所有value去重
时间: 2024-05-06 16:17:56 浏览: 135
Java中List根据map的某个key去重的代码
可以使用Java 8的Stream API和Collectors工具类来实现:
```java
Map<String, List<Integer>> map = new HashMap<>(); // 假设这是你要去重的Map
map.values().forEach(list -> {
List<Integer> distinctList = list.stream().distinct().collect(Collectors.toList());
list.clear();
list.addAll(distinctList);
});
```
这段代码会遍历Map的所有value,对每个List进行去重操作,并将去重后的结果重新放回原来的List中。注意,这里是直接修改原来的List,而不是新建一个List,如果你需要保留原来的List,可以在遍历前先将原来的List复制一份再进行去重操作。
阅读全文