Java面试必问--HashMap的底层
# jdk7 HashMap
数组
数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为 O(1)
;
数组的特点是:寻址容易,插入和删除困难;
HashMap
里面实现一个静态内部类Entry,Entry
包含四个属性:key,value,hash
值和用于单向链表的next
。Entry
就是HashMap
键值对实现的一个基础bean
,我们上面说到HashMap
的基础就是一个线性数组,这个数组就是Entry[],Map
里面的内容都保存在Entry[]
里面