请你简单介绍一下ArrayList和LinkedList的区别

ArrayList采用数组实现的,查找元素的效率比LinkedList高。

LinkedList采用双线链表实现,插入和删除的效率比ArrayList要高。

如果一直在list的尾部添加元素,用哪种效率更高?

当插入的数据一直是小于千万级的时候,大部分是LinkedList效率高,而当数据量大于千万级时,就会出现ArrayList的效率比较高了。

LinkedList每次添加元素的时候,会new一个Node对象来存新增加的元素,所以当数据量小的时候,这个时间并不明显,而ArrayList需要扩容,所以LinkedList的效率比较高,其中,如果ArrayList出现不需要扩容的时候,那么ArrayList的效率是比LinkedList要高的,当数据量很大的时候,new对象的时间大于扩容的时间,那么ArrayList的效率高过LinkedList。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐