uj5u.com熱心網友回復:
寫成2的次冪的話計算機做位移預算比較快,應該是這樣uj5u.com熱心網友回復:
你可以設定15,但是實際會被轉換成16,可以看看原始碼里的tableSizeFor()方法,通過這個方法會將你設定的capacity-1通過位移運算變為最接近的下一個2的n次冪,設定為2的n次方主要是為了快速定位到陣列的slot上,2的n次方-1的二進制會使當前capacity的低位全部變為1,再通過與hahs值的&運算可以得到陣列slot,區別于取模運算,取模可以設定任何值,但是取模運算效率沒有&運算高轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/242975.html
標籤:Java SE
