HashMap源码分析关键点

2019-03-28  本文已影响0人  建瓯

关键结构:

HashMap中有个一个table 数组,申明了一个内部静态类Entry<K,V>,table实际存储的对象,它也是单链表中的Node节点;

通过hashcode值定位到table中的存储位置,当有hash冲突时,在hash位置建立单链表,hashcode相同的元素都放在该链表中

初始化参数:

initialCapacity 初始容量,table 初始大小;

loadFactor加载因子0.75,当table当前size即实际元素的个数大于等于当前容量*loadFactor时调用resize方法扩容,将旧数据移动到新table里面。

扩容的容量是原来的俩倍,2*size

关键方法

put(key,value)

get(key,value)

上一篇下一篇

猜你喜欢

热点阅读