HashMap的底层实现原理

首先有一个每个元素都是链表的数组,当添加一个元素(key-value)时,就首先计算元素key的hash值,以此确定插入数组中的位置,但是可能存在同一个hash值的元素已经被放在数组的同一个位置上了,这时就添加到同一个Hash值元素的后面,他们在数组的同一位置,但是形成了链表,同一个链表上Hash值是相同的,所以说数组里存放的是链表。当链表长度太长的时候(超过阈值8的时候),链表就会转换为红黑树,这样大大提高了查找的效率。

posted @ 2022-03-22 16:48  yfwei  阅读(31)  评论(0编辑  收藏  举报