ArrayList 初始容量:10 扩容因子:1,当容量达到上限后才会触发扩容。

扩容公式:新容量 = 旧容量/2 + 旧容量 + 1
比如:初始容量为4,其容量的每次扩充后的新容量为:4->7->11->17->26->...
即每次扩充至原有基础的1.5倍

Vector 初始容量:10 扩容因子:1,当容量达到上限后才会触发扩容。

扩容公式:old*2 如:一次扩容为20、二次扩容为40

HashSet 初始容量:16(Hashset是基于HashMap的所以是16)

扩容因子:0.75,当容量达到最大容量的75%时就会触发扩容。

扩容公式:old*2 如:一次扩容32,二次扩容64

HashMap 初始容量:16(为何是16,16是2^4,16<<1=32,可以提高查询效率)

扩容因子:0.75,当容量达到最大容量的75%时就会触发扩容。

扩容公式:old*2 如:一次扩容32,二次扩容64

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐