实现Map的removeAll方法

官方并没有实现map的removeAll方法,我的实现: 

 /**
     * 两个map相减,返回减掉的属性(即:相同的属性map集合)
     * @param map1
     * @param map2
     * @return
     */
    public static Map mapRemoveAll(Map map1, Map map2) {
        Set keys = map2.keySet();
        Set> entrySet = map1.entrySet();

        Map sameElements = new HashMap<>();

        for (String key : keys) {
            Iterator> car = entrySet.iterator();
            while (car.hasNext()) {
                Map.Entry obj = car.next();
                if (StringUtils.equals(key, obj.getKey())) {
                    sameElements .put(obj.getKey(), obj.getValue());
                    car.remove();
                }
            }
        }

        return sameElements ;
    }

欢迎指正!

你可能感兴趣的:(java)