HashMap的最大容量爲什麼是2的30次方?

今天看HashMap的底層實現,發現HashMap的最大容量規定爲: // 最大容量(必須是2的冪且小於2的30次方,傳入容量過大將被這個值替換) static final int MAXIMUM_CAPACITY = 1 << 30; 當看到 1<<30 時,對「<<」 有點模糊,當了解「<<」的用法之後,又有一個問題; int類型不是4個字節共32位嗎,爲什麼不是 1<<31呢? 首先介紹下等
相關文章
相關標籤/搜索