首页 > 其他 > 详细

023 说一下HashMap的实现原理?

时间:2020-04-13 09:48:32      阅读:55      评论:0      收藏:0      [点我收藏+]

说一下HashMap的实现原理?

答:

HashMap 基于 Hash 算法实现,通过 put(key,value) 存储,get(key) 来获取 value

当传入 key 时,HashMap 会根据 key,调用 hash(Object key) 方法,计算出 hash 值,根据 hash 值将 value 保存在 Node 对象里,Node 对象保存在数组里

当计算出的 hash 值相同时,称之为 hash 冲突,HashMap的做法是,用链表和红黑树存储相同hash值的value 。

当 hash 冲突的个数:小于等于?8 使用链表;大于 8 时,使用红黑树。(解决链表查询慢的问题)

参考博文:https://www.baidu.com/link?url=UhLS2ywoJ79ZCtp917Cy7r6ZzouBAliqNTNB2GyZUYw9MvYy3H3kHjnUzifeP4Fb7kguRTNB9UqoZrcVaxFR-MfsBdUi9MiJgixNNN32aBq&wd=&eqid=f5f45c8d00a64f27000000035e93b41c

023 说一下HashMap的实现原理?

原文:https://www.cnblogs.com/ynzj123/p/12689289.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!