2.ArrayList和LinkedList的区别是什么?

简介: 2.ArrayList和LinkedList的区别是什么?

● ArrayList基于动态数组实现的非线程安全的集合;LinkedList基于链表实现的非线程安全的集合。
● 对于随机index访问的get和set方法,一般ArrayList的速度要优于LinkedList。因为ArrayList直接通过数组下标直接找到元素;LinkedList要移动指针遍历每个元素直到找到为止。
● 新增和删除元素,一般LinkedList的速度要优于ArrayList。因为ArrayList在新增和删除元素时,可能扩容和复制数组;LinkedList实例化对象需要时间外,只需要修改指针即可。
● LinkedList集合不支持 高效的随机随机访问(RandomAccess)
● ArrayList的空间浪费主要体现在在list列表的结尾预留一定的容量空间,而LinkedList的空间花费则体现在它的每一个元素都需要消耗相当的空间

相关文章
|
5月前
|
存储 安全 Java
java面试基础 -- ArrayList 和 LinkedList有什么区别, ArrayList和Vector呢?
java面试基础 -- ArrayList 和 LinkedList有什么区别, ArrayList和Vector呢?
54 0
|
安全
ArrayList 和 LinkedList 的区别【重要】
ArrayList 和 LinkedList 的区别【重要】
58 0
|
5月前
|
存储 安全
ArrayList 和 LinkedList 的区别
ArrayList 和 LinkedList 的区别
|
5月前
|
存储
Arrylist 与 Linkedlist 的区别
Arrylist 与 Linkedlist 的区别
47 1
|
存储 Java
Java中 List集合接口及其主要的实现类ArrayList,Vector,LinkedList的详解
Java中 List集合接口及其主要的实现类ArrayList,Vector,LinkedList的详解
58 0
|
安全
List和ArrayList的区别
List和ArrayList的区别
65 0
ArrayList与LinkedList移除指定元素对比(源码分析)
ArrayList与LinkedList移除指定元素对比(源码分析)
45 0
|
存储 索引
ArrayList与LinkedList区别源码分析
1、ArrayList是基于数组,LinkedList是基于链表 2、基于数组的ArrayList对于根据索引值查找比较高效;基于链表的LinkedList对于增加、删除操作比较高效 3、剖析CRUD:
216 0
|
存储 安全 算法
【JAVA】对比 Vector、ArrayList、LinkedList 有何区别?
我们在日常的工作中,能够高效地管理和操作数据是非常重要的。那么你知道,对比 Vector、ArrayList、LinkedList 有何区别?
148 0
Arrays.asList() 和 new ArrayList() 的区别(详解)
Arrays.asList() 和 new ArrayList() 的区别(详解)
242 0
Arrays.asList() 和 new ArrayList() 的区别(详解)