hashMap底层实现
Posted 2661314cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hashMap底层实现相关的知识,希望对你有一定的参考价值。
转自:https://zhuanlan.zhihu.com/p/28587782
hashMap中放入(put)元素的重要步骤:
1、计算key的hash值,算出元素的在底层数组的下标位置。
2、通过下标位置定位到底层数组里的元素(可能是链表也有可能是数)。
3、取到元素,判断放入元素的key是否==或equals当前位置的key,成立则替换value值,返回旧值。
4、如果是数,循环树中的节点,判断放入元素的key是否==或equals节点的key,成立则替换树里的value,并返回旧值,不成立就添加到树里。
5、否则就顺着元素的链表结构循环节点,判断放入元素的key是否==或equals节点的key,成立则替换链表里value,并返回旧值,找不到就添加到链表的最后。
以上是关于hashMap底层实现的主要内容,如果未能解决你的问题,请参考以下文章
面试突击15:说一下HashMap底层实现?及元素添加流程?
HashMap的底层实现原理? HashMap 和 Hashtable的异同? 负载因子值的大小,对HashMap有什么影响?