Map按照value删除键值对-python, java实现

实现逻辑
给定map和值n,删除map中值为value的键值对
Java

package sort_10_type.zulong;

import java.util.Collection;
import java.util.HashMap;
import  java.util.*;

public class Main {
    //通过value移除hashmap中的键值对
    public static  HashMap<Integer,Integer>  dropdatabyvalue(HashMap<Integer,Integer> map, int n){
        Set set=map.entrySet();
        Iterator iterator=set.iterator();
        while (iterator.hasNext()){
            Map.Entry entry=(Map.Entry) iterator.next();
            if(entry.getValue()==(Integer)n)
                iterator.remove();
        }
        return  map;
    }
    public  static  void  printmap(HashMap<Integer,Integer> map){
           Set set=map.entrySet();
           Iterator iterator=set.iterator();
           while (iterator.hasNext()){
               Map.Entry entry=(Map.Entry) iterator.next();
               System.out.print(entry.getKey()+" "+entry.getValue()+";");
           }
           System.out.println();


    }
    public static void main(String[] args) {
        HashMap <Integer,Integer> map=new HashMap<>();
        map.put(2,2);
        map.put(3,2);
        map.put(4,2);
        map.put(6,6);
        map.put(7,8);
        printmap(map);
        dropdatabyvalue(map,2);
        printmap(map);

    }
}

python

# --*--coding: utf-8 --*--

def dropdata(dic,n):
    for k, v in dic.items():
        if v==n:
            dic.pop(k)


if __name__=='__main__':
    dic={1:1,2:2,3:2,4:2,5:5}
    dropdata(dic, 2)
    print dic


上一篇:CMD 常用命令


下一篇:剑指offer计划10(动态规划中等版)---java