`

HashMap代码小记

    博客分类:
  • JAVA
 
阅读更多

HashMap源代码小记

类注释

HashMap类大致等于HashTable类,除了HashMap是未同步的并且允许空值的。这个类不保证映射(map)的顺序,尤其是不保证顺序随着时间的过去仍然保持一致。

由本类的所有集合视图方法(collection view methods)返回的迭代器是快速失败(fail-fast)的:如果这个映射在迭代器创建后的任意时间被结构性修改(除了使用迭代器自身提供的remove方法外),这个迭代器会抛出ConcurrentModificationException异常。

实现说明

这个映射通常是表现为基于容器(桶)的哈希表,但是当容器变得太大时,它们(这些桶)会转变为树节点(TreeNode,即每个容器里面的元素都是TreeNode),每个的结构类似于它们在java.util.TreeMap中的样子。大部分的方法都尝试使用普通的容器,但是当合适的时候(通过简单的检查node的实例类型instanceof)会转变为TreeNode的方法。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics