面试之HashMap


一、 HashMap

hashMap和hashTable 比较老的问题,一般是传统企业会问这种区别。

Hash:散列将一个仁义的长度通国某种(hash函数算法)算法转换成一个固定值。

移位

Mao:地图 x,y存储

总结:通过HASH出来的值 然后通过值定位到这个map 然后value存储到这个mao中的hashMap基本原理

       Key,value

面试之HashMap_第1张图片

hash冲突

 面试之HashMap_第2张图片面试之HashMap_第3张图片

 

面试之HashMap_第4张图片


会把之前的对象存储在next里

但是 Entry对象并没有为next生成get、set方法,所以next是get不到的。

可以通过这种方法去拿老值

面试之HashMap_第5张图片

二源码分析

面试之HashMap_第6张图片

面试之HashMap_第7张图片

在占容量4/3时扩容

 

三、手写一个HashMap

面试之HashMap_第8张图片

四、不足之处(伸缩性角度)

面试之HashMap_第9张图片

你可能感兴趣的:(面试之HashMap)