一个list集合泛型是Map<String,String>,去除集合中重复的内容 java
时间: 2023-11-18 08:19:55 浏览: 89
如果你的List集合泛型是Map<String, String>,那么你可以使用HashMap来实现去除重复元素。代码如下:
```java
List<Map<String, String>> myList = new ArrayList<>();
Map<String, String> map1 = new HashMap<>();
map1.put("key1", "value1");
map1.put("key2", "value2");
myList.add(map1);
Map<String, String> map2 = new HashMap<>();
map2.put("key1", "value1");
map2.put("key2", "value2");
myList.add(map2);
Map<String, String> map3 = new HashMap<>();
map3.put("key1", "value1");
map3.put("key2", "value3");
myList.add(map3);
Set<Map<String, String>> mySet = new HashSet<>();
mySet.addAll(myList);
myList.clear();
myList.addAll(mySet);
System.out.println(myList);
```
输出结果为:`[{key1=value1, key2=value2}, {key1=value1, key2=value3}]`
首先将List转化为HashSet,因为HashSet不允许有重复元素,所以重复的元素将被去除。由于Map的equals和hashCode方法默认比较的是其键值对,所以可以直接将List中的Map对象放入HashSet中去重。然后再将HashSet转化回List。
阅读全文