ArrayList和LinkedList集合扩容
今天无意间发现了原来ArrayList和LinkedList,还有Vector它们间的扩容机制原来是不一样的。
ArrayList
ArrayList默认容量是10,每次扩容原数组长度增长50%,即原来的1.5倍。
LinkedList
是采用链表存储方式,对容量没有要求,不需要扩容。
Vector
当Vector增长倍数默认时,若长度需增长,Vector默认增长一倍,即原来的两倍。
initialCapacity - 向量的初始容量
capacityIncrement - 当向量溢出时容量增加的量
当Vector设置了容量增加的量后,Vector按照设定的增加量增加。
注意了,capacityIncrement = 0,是默认增长一倍。