HashMap的初始容量为什么一定是2的n次方!!!

大家都知道HashMap的初始容量是16,负载因子是0.75,当它的容量达到16*0.75=12时,便开始进行扩容。但是你知道为什么HashMap的初始容量是16吗?为什么不能是17?为什么不能是19? 这个原因显然只有通过看源码,我们才能了解其中的真谛! HashMap的源码写道 MUST be a power of two. 就是必须是2的幂次方的意思!并且规定它的初始容量对1按位运算,从1开
相关文章
相关标签/搜索