第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

求大神解讀一下這段源碼

求大神解讀一下這段源碼

陪伴而非守候 2019-04-10 20:47:46
javastaticintindexFor(inth,intlength){//assertInteger.bitCount(length)==1:"lengthmustbeanon-zeropowerof2";returnh&(length-1);}這是hashmap源碼的一個(gè)函數(shù),作用是將hashcode對應(yīng)到hashmap數(shù)組里面的下標(biāo)。`h&(length-1)`是什么運(yùn)算呢?這樣能保證下標(biāo)是唯一的嗎?
查看完整描述

2 回答

?
拉莫斯之舞

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個(gè)贊

h&(length-1)等價(jià)于h%length
&是按位與,需要注意的是這里面length的值一定是2的冪
舉例,length=4那么,(length-1)的二進(jìn)制表示是00000011,00000011和任意數(shù)字進(jìn)行&操作,等價(jià)于以00000100為除數(shù)的取余操作
                            
查看完整回答
反對 回復(fù) 2019-04-10
?
桃花長相依

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊

這個(gè)方法非常巧妙,它通過h&(table.length-1)來得到該對象的保存位,而HashMap底層數(shù)組的長度總是2的n次方,這是HashMap在速度上的優(yōu)化。在HashMap構(gòu)造器中有如下代碼:
見一個(gè)非常巧妙的hashcode算法returnh&(length-1);
                            
查看完整回答
反對 回復(fù) 2019-04-10
  • 2 回答
  • 0 關(guān)注
  • 364 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號