map中如何对value进行去重操作呢?
下文笔者讲述map中value去重的操作分享,如下所示
map集合对象是我们日常开发中常使用的存储容器
我们都知道map中key是不可以重复
最近笔者遇到一个容器中value存在大量重复,无意义的数据
那么如何对map中的value进行去重呢?并且随机保留一条key即可,下文笔者将一一道来,如下所示
map集合对象是我们日常开发中常使用的存储容器
我们都知道map中key是不可以重复
最近笔者遇到一个容器中value存在大量重复,无意义的数据
那么如何对map中的value进行去重呢?并且随机保留一条key即可,下文笔者将一一道来,如下所示
实现思路:
1.定义一个临时的map
2.依次遍历待去重的map,然后将key,value放入临时的map中
每次插入时,都对value是否存在进行判断
如果存在,,则不插入,否则插入临时map
3.返回"临时map"即是value去重后的数据
例:
public static void DistintValueMap() {
//给出一个value有重复元素的map
Map<String,String> map = new HashMap<String, String>();
map.put("1", "java265.com");
map.put("2", "猫猫");
map.put("3", "java265.com");
map.put("4", "奥特曼");
System.out.println("去重前"+map.toString());
//创建一个新的map2
Map<String,String> map2=new HashMap<String, String>();
for(String key:map.keySet()){
if(!map2.containsValue(map.get(key))){
map2.put(key, map.get(key));
}
}
System.out.println("去重后"+map2.toString());
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


