亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - HashMap中對(duì)于indexFor(int h, int length)的疑惑

瀏覽:82日期:2023-12-15 16:22:30

問(wèn)題描述

static int indexFor(int h, int length) {// assert Integer.bitCount(length) == 1 : 'length must be a non-zero power of 2';return h & (length-1); }

HashMap中會(huì)對(duì)key的hash值與Entry[]數(shù)組大小進(jìn)行再hash求取Entry數(shù)組的下標(biāo)位置,我剛才調(diào)試時(shí)發(fā)現(xiàn),2個(gè)不同key(hash值也不同),但經(jīng)過(guò)indexFor得到的index下標(biāo)是一樣的,也就是說(shuō)2個(gè)不同key值、不同hash值的數(shù)值串在一起形成了鏈表,我記得以前看別人寫(xiě)的文章,都是說(shuō)hash值相同,但key值不同的2個(gè)值才會(huì)形成鏈表,但實(shí)際自己調(diào)試卻發(fā)現(xiàn)不一樣的結(jié)果,請(qǐng)大神們看看問(wèn)題所在

問(wèn)題解答

回答1:

Object (key) -> hashCode -> index

不同的Object可能有相同的hashCode(反過(guò)來(lái)一定不同,除非hashCode或equals定義錯(cuò)了);不同的hashCode可能有相同的index(反過(guò)來(lái)一定不同),這時(shí)才會(huì)形成鏈表。

這里的hashCode可能跟你看到的某些文章的hash不是一個(gè)意思吧。

標(biāo)簽: java
主站蜘蛛池模板: 久久青青草原精品国产不卡 | 国产亚洲精品va在线 | 老湿机一区午夜精品免费福利 | 国产h视频 | 亚洲欧美日韩中文字幕在线 | 成人区视频 | 国产精品小黄鸭一区二区三区 | 青草色视频 | 欧美色碰碰碰免费观看长视频 | 狠狠久久 | 天天摸天天碰色综合网 | 亚洲免费网址 | 亚洲另类在线观看 | 亚洲国产综合精品中文第一区 | 国产乱码精品一区二区三区网页版 | 五月婷婷在线视频 | 欧美人牲 | 妖精视频免费入口 | 中文字幕亚洲一区二区va在线 | 黄网站视频观看免费 | 二级黄色毛片 | 91桃色视频在线观看 | 亚洲色欧美 | 97国产精品欧美一区二区三区 | 中文 字幕 高清 在线 | 国产福利一区二区三区四区 | 亚洲精品第一第二区 | 亚洲精品乱码国产精品乱码 | 久草在线新首页 | 亚洲一区区 | 亚洲精品综合网在线8050影院 | 欧美特黄三级在线观看 | 看真人一一级毛片 | 国产高清www免费视频 | 成人午夜在线播放 | 一级黄色大片免费观看 | aaaaaa级特色特黄的毛片 | 国产呦系列 欧美呦 日韩呦 | 久久这里精品青草免费 | 亚洲综合日韩精品欧美综合区 | 日韩毛片在线视频 |