java中ArrayList和LinkedList的区别详解
ArrayList和LinkedList都实现了List接口,有以下的不同点:1、ArrayList是基于索引的数据接口,它的底层是数组。它可以以O时间复杂度对元素进行随机访问。与此对应,LinkedList是以元素列表的形式存储它的数据,每一个元素都和它的前一个和后一个元素链接在一起,在这种情况下,查找某个元素的时间复杂度是O。ArrayList扩容:总的来说就是分两步:1、扩容把原来的数组复制到另一个内存空间更大的数组中2、添加元素把新元素添加到扩容以后的数组中带参构造:在无参构造中,我们看到了在用无参构造来创建对象的时候其实就是创建了一个空数组,长度为0int newCapacity = oldCapacity + ;
用户评论