HashMap分析
&esmp;1,基于hashCode()方法计算key的hash值
&esmp;2,创建Node数组,基于加载因子扩容,平衡内存占用与执行效率
&esmp;3,创建Node对象,基于key的hash值+算法,计算Node对象在数组中的索引
&esmp;&esmp;(Node对象中,封装Key/value对象,相同位置存Node对象时)
&esmp;&esmp;(1)小于或等于6个重复时,基于单向链表进行保存
&esmp;&esmp;(2)大于或等于8个重复时,基于红黑树保存
&esmp;&esmp;(3)当数量发生改变的时候,转换数据结构
&esmp;4,获取时,基于key的hash值+算法,直接获取Node对象,想获得值,还需要确定数据结构
HashMap分析
最新推荐文章于 2025-02-25 16:59:33 发布
