jdk1.7 -> jdk 1.8 -> jdk 17 HashMap 源码剖析
1.1首先,需要调用key1所在类的hashCode()方法,计算key1对应的哈希值1,此哈希值1经过某种(hash())之后,得到哈希值2.哈希值2再经过某种算法(indexFor())之后就确定了(key1,value1)在数组种的索引位置i --------> 情况A。------->情况B。------->情况B。1.2 如果此索引位置i的数组上有元素(key2,value2),则需要比较key和key2的哈希值 --->哈希冲突。将(key1,value1)添加到当前的map中。
原创
2023-10-26 19:53:36 ·
255 阅读 ·
0 评论