码迷,mamicode.com
首页 > 其他好文 > 详细

23.说一下 HashMap 的实现原理?

时间:2019-11-04 15:42:31      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:返回值   返回   put   获取   基于   实现   碰撞   方法   equal   

hashMap基于hashing原理,我们通过put()和get()方法存储和获取对象。当我们将键值对传给put()方法时;它调用键对象的hashCode()方法来计算hashCode,然后找到bucket位置来存值对象。当获取对象时,通过键值对的equals()方法来找到正确的键值对。然后返回值对象。HashMap使用链表来解决碰撞问题,当发生碰撞时,对象会存储在链表的下一个节点。hashMap在每个链表的阶段存储键值对对象。

当两个不同的键对象hashCode相同时会发生什么?他们会存储在同一个bucket位置的链表中。建对象的equals()方法用来找到键值对。

23.说一下 HashMap 的实现原理?

标签:返回值   返回   put   获取   基于   实现   碰撞   方法   equal   

原文地址:https://www.cnblogs.com/lixxx/p/11792072.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!