zoukankan      html  css  js  c++  java
  • java中两个map比较

    /**
         * 用map的keySet()的迭代器(性能效率较低)
         * 
         */
        public  void compareMap1 (){
     
            Map<String, String> m1 = new HashMap<String, String>();//
            Map<String, String> m2 = new HashMap<String, String>();//
     
            Iterator<String> iter1 = m1.keySet().iterator();
     
            while (iter1.hasNext()) {
                String m1Key = (String) iter1.next();
                if (!m1.get(m1Key).equals(m2.get(m1Key))) {//若两个map中相同key对应的value不相等
                    //......
                }
            }
     
        }
        /**
         * 用map的entrySet()的迭代器(性能效率较高)
         */
        public void compareMap2(){
            Map<String, String> m1 = new HashMap<String, String>();
            Map<String, String> m2 = new HashMap<String, String>();
             
            Iterator<Entry<String, String>> iter1 = m1.entrySet().iterator();
            while(iter1.hasNext()){
                Map.Entry<String, String> entry1 = (Entry<String, String>) iter1.next();
           String m1value = entry1.getValue() == null?"":entry1.getValue();
                String m2value = m2.get(entry1.getKey())==null?"":m2.get(entry1.getKey());
                      
                if (!m1value.equals(m2value)) {//若两个map中相同key对应的value不相等
                    //其他操作...
                }
            }
        }
        /**
         * 用map的entrySet()的增强型for循环(性能效率较高)
         */
        public void compareMap3(){
             Map<String, String> m1 = new HashMap<String, String>();
             Map<String, String> m2 = new HashMap<String, String>();
              
             for(Map.Entry<String, String> entry1:m1.entrySet()){
                 String m1value = entry1.getValue() == null?"":entry1.getValue();
                 String m2value = m2.get(entry1.getKey())==null?"":m2.get(entry1.getKey());
                 if (!m1value.equals(m2value)) {//若两个map中相同key对应的value不相等
                    //其他操作...
                }
             } 
        }
  • 相关阅读:
    git 查看、创建、切换、删除、重命名和推送分支
    Java 构造器或构造方法
    Java 二维数组
    Java 引用类型数组
    Java this关键字
    STM8S103 PB4和PB5
    RK3288 dts文件中背光配置参数
    Laravel Cache 缓存钉钉微应用的 Access Token
    Laravel View Composer
    Laravel Cache 的缓存文件在到期后是否会自动删除
  • 原文地址:https://www.cnblogs.com/shininguang/p/5294157.html
Copyright © 2011-2022 走看看