zoukankan      html  css  js  c++  java
  • java IdentityHashMap 与HashMap

    java IdentityHashMap 与HashMap

    这两个map的主要区别在于,比较key值什么时候:
    IdentityHashMap我觉得当k1 == k2 时刻key值一样的,比较的是引用
    HaspMap觉得k1 == null ? k2 == null:k1.equals(k2)时key值是一样的,比较的是值
     
    举个样例:
    Integer a = new Integer(150);
               Integer b = new Integer(150);
               HashMap hashMap = new HashMap();
               IdentityHashMap identityHashMap = new IdentityHashMap();
               hashMap.put(a,1);
               hashMap.put(b, 2);
               identityHashMap.put(a,1);
               identityHashMap.put(b,2);
               System.out.println(hashMap);
               System.out.println(identityHashMap);
     
    执行结果:
    P_LOG: {150=2}
    P_LOG: {150=1, 150=2}
     
    总结:
              HashMap:会使用equals比较key对象
              IdentityHashMap:使用 == 比较key对象
  • 相关阅读:
    【Angular2】ng2的开始_组件
    【js框架】随笔
    【sublime text3】个性化定制
    PLSQL中文乱码问题
    Microsoft office 2010密钥
    node_oracle连接
    oracle安装配置
    Logging in Java
    Java 基础
    Hibernate
  • 原文地址:https://www.cnblogs.com/polo/p/13793453.html
Copyright © 2011-2022 走看看