关于面试中问到HashMap的实现

关于HashMap和ConcurrentHashMap的实现方法,在jdk1.8中实现方法好像有了很大的变化。各位在面试中遇到这个问题是怎么回答的呢

全部评论
1.8之前HashMap是数组加链表,1.8改成数组加链表或红黑树,当冲突达到一定值时,链表转换成红黑树
点赞 回复 分享
发布于 2016-04-06 13:10
JDK1.8的在JDK1.7的基础上增加了红黑树这种数据结构。当链表长度默认超过8时,链表就转换为红黑树,使得在桶里面查找数据的复杂度从O(n)降到O(logn),从而提高查找速度。
点赞 回复 分享
发布于 2018-04-11 10:17
当数组大于8时,自动转化成红黑树,
点赞 回复 分享
发布于 2016-04-07 22:27
在JDK1.7之前,HashMap的底层是数组和链表实现的,数组用来存储键和值,链表        用来解决hash冲突。因为HashMap使用key的hashCode来寻找存储位置,不同的     key可能具有相同的hashCode,
点赞 回复 分享
发布于 2018-04-11 10:17
分开说一下好了
点赞 回复 分享
发布于 2016-04-06 13:11
把你知道的都说了。
点赞 回复 分享
发布于 2016-04-06 15:39

相关推荐

Pandaileee:校友加油我现在也只有一个保底太难了
点赞 评论 收藏
分享
09-27 18:15
门头沟学院 C++
在努力的小牛:来告诉你 录用评估挂就是同期好几个候选人,部门负责人选了其他人。
点赞 评论 收藏
分享
11-18 09:44
Java
小白也想要offer:简历别放洋屁,搞不还还放错了,当然你投外企除外,以上纯属个人观点
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务