来源: 最后更新:24-09-13 12:29:07
HashMap内部是通过一个数组实现的,只是这个数组比较特殊,数组里存储的元素是一个Entry实体(在JAVA8中为Node),这个Entry实体主要包含key、value以及一个指向自身的next指针。HashMap是基于hashing实现的,当进行put操作时,根据传递的key值得到它的hashcode,然后再用这个hashcode与数组的长度进行模运算,得到一个int值,就是Entry要存储在数组的位置(下标);当通过get方法获取指定key的值时,会根据这个key算出它的hash值(数组下标),根据这个hash值获取数组下标对应的Entry,然后判断Entry里的key,hash值或者通过equals()比较是否与要查找的相同,如果相同,返回value,否则的话,遍历该链表(有可能就只有一个Entry,此时直接返回null),直到找到为止,否则返回null。
标签: hashmap
2024许昌家电补贴包含平板电脑吗 2021家电补贴许昌市家电以旧换新活动正式开始啦。
暖心爱情电影推荐恋夏500天 恋夏500天影评 爱的二八定律剧情介绍(电视剧爱的二八定律剧情介绍) 珠海横琴客运码头票价查询入口 珠海横琴码头时刻表 江苏优漫卡通卫视直播在哪里看