HashMap内部的bucket(桶)数组长度为什么一直都是2的整数次幂?


这样做有两个好处:
第一,可以通过(table.length - 1) & key.hash()这样的位运算快速寻址,
第二,在HashMap扩容的时候可以保证同一个桶中的元素均匀的散列到新的桶中,
具体一点就是同一个桶中的元素在扩容后一半留在原先的桶中,一半放到了新的桶中。

posted @ 2023-04-14 11:42  18sui  阅读(32)  评论(0)    收藏  举报