面试问题1
java有关
描述一下 HashMap的实现原理
在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的键值对会被放在同一个位桶里,当桶中元素较多时,通过key值查找的效率较低。
而JDK1.8中,HashMap采用位桶+链表+红黑树实现,当链表长度超过阈值(8),时,将链表转换为红黑树,这样大大减少了查找时间。
HashMap使用数组加链表实现。每个数组中储存着链表。
当使用put方法储存key-value键值对时,会先调用key的hashCode方法,得到
原创
2021-06-16 17:01:19 ·
152 阅读 ·
0 评论