HashMap对象如果不指定初始化容量initialCapacity的话,HashMap的默认容量是16。

举个栗子:

new HashMap(7) 会创建容量为8的Map;

new HashMap(10) 会创建容量为16的Map;

具体是因为JDK会默认帮我们计算一个合理的值做初始容量,,,也就是找一个比传入值大的2的幂

还是上面的例子,new HashMap(7),7比2的2次方大(4),比2的三次方(8)小,就找一个比它刚好大的2的幂;new HashMap(10),10比2的3次方大(8),比2的四次方(16)小,也就用2^4(16)作为初始容量。

引用:

关于HashMap初始化容量,设置多少合适。

最后修改:2021 年 06 月 04 日 01 : 58 PM
如果觉得我的文章对你有用,请随意赞赏