`
jiangwenfeng762
  • 浏览: 286410 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

IdentityHashMap

阅读更多

之前很少用到IdentityHashMap,

 

简单说IdentityHashMap与常用的HashMap的区别是:前者比较key时是“引用相等”而后者是“对象相等”,即对于k1和k2,当k1==k2时,IdentityHashMap认为两个key相等,而HashMap只有在k1.equals(k2) == true 时才会认为两个key相等。

 

IdentityHashMap有其特殊用途,比如序列化或者深度复制。或者记录对象代理。

 

举个例子,jvm中的所有对象都是独一无二的,哪怕两个对象是同一个class的对象,而且两个对象的数据完全相同,对于jvm来说,他们也是完全不同的,如果要用一个map来记录这样jvm中的对象,你就需要用IdentityHashMap,而不能使用其他Map实现。

 

关于IdentityHashMap的完整参考信息,参见:http://docs.oracle.com/javase/6/docs/api/java/util/IdentityHashMap.html

分享到:
评论

相关推荐

    java集合-IdentityHashMap的使用

    IdentityHashMap是Java中的一种特殊的哈希表实现,它使用"引用相等"(而不是"对象相等")来判断键的唯一性。具体来说,当且仅当两个键引用同一个对象时,它们被认为是相等的。

    JAVA中IdentityHashMap使用.rar

    JAVA中IdentityHashMap使用.rar

    java中级面试题(自己汇总)

    本文总结了Java中级面试题,涵盖了集合、HashMap、HashSet、HashTable、ConcurrentHashMap、红黑树、Java 8对HashMap的优化、LinkedHashMap、TreeMap、IdentityHashMap等知识点。 集合 * List和Set都是继承自...

    Java 基础核心总结 +经典算法大全.rar

    Hashtable 类IdentityHashMap 类WeakHashMap 类 Collections 类集合实现类特征图 泛形 泛型的使用 用泛型表示类 用泛型表示接口泛型方法 泛型通配符 反射 Class 类Field 类Method 类ClassLoader 类 枚举 枚举特性 ...

    Java开发详解.zip

    031312_【第13章:Java类集】_IdentityHashMap类笔记.pdf 031313_【第13章:Java类集】_SortedMap类笔记.pdf 031314_【第13章:Java类集】_集合工具类:Collections笔记.pdf 031315_【第13章:Java类集】_Stack类...

    疯狂JAVA讲义

    7.6.4 IdentityHashMap实现类 280 7.6.5 EnumMap实现类 281 7.7 HashSet和HashMap的性能选项 282 7.8 操作集合的工具类:Collections 283 7.8.1 排序操作 283 7.8.2 查找,替换操作 287 7.8.3 同步控制 288 ...

    Java中大集合

    Java集合 HashMap类 IdentityHashMap类的使用 SortedMap类的基本使用 在map中创建自己的类的定义 随机数的集合 等等等等

    javabitset源码-JerrySoundCode:杰瑞声码

    IdentityHashMap (done) TreeMap (done) WeakHashMap (done) 并发集合 ArrayBlockingQueue(done) LinkedBlockingDeque (done) LinkedBlockingQueue (done) PriorityBlockingQueue (done) ConcurrentHashMap (done) ...

    java集合框架 解析

    java集合框架 3.6. LinkedHashSet类 4. Map接口 4.1. Map.Entry接口 4.2. SortedMap接口 4.3. AbstractMap抽象类 4.4. HashMap类和TreeMap类 4.4.1. HashMap类 4.4.2. TreeMap类 ...4.6. IdentityHashMap类

Global site tag (gtag.js) - Google Analytics