1.ArrayList底层是一个名叫 elementData 的数组;
2.当我们使用无参构造函数去构造一个ArrarList集合时,他的初始容量为0,源码为:new Object[0]
当第一次使用add方法想集合里面添加元素时,源码会首先判断集合是否需要扩容(正是因为每次添加数据时都需要判断,所以这也是ArrayList集合效率低下的原因之一)
如果原有elementData数组容量为0,则扩容elementData容量为10。随后若需要再次扩容,则每次扩容为原来的1.5倍;
3.当我们使用指定容量大小的构造器去构造ArrayList集合时,他的初始容量为当前指定大小,随后若需要再次扩容,则每次扩容为原来的1.5倍;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)