在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ jdk1.8 中HashMap源碼的resize()方法

jdk1.8 中HashMap源碼的resize()方法

clipboard.png

圖片中紅框圈示代碼不懂;
假如原有hashMap的容量為16,下標為15(j=15)的位置存放的是hash值為15,31,47三個數(shù)據(jù)。擴容后hashMap容量為32,按照代碼hiHead中是31,47,存放在下標31(j+16)的位置。但是47&31計算得到的位置不應該是15嗎?

回答
編輯回答
拮據(jù)

47&16=0,并沒有存放在hiHead中,而是在loHead中,47&31=15,存儲位置并沒有改變。是計算錯誤導致的問題,現(xiàn)在已經(jīng)弄清楚了

2018年7月25日 13:10