关于java集合(3)-ArrayList和LinkedList的区别
2017-12-06 15:49
776 查看
之前面试一直有遇到的一个问题,就是ArrayList和LinkedList的区别。
ArrayList和LinkedList区别
ArrayList是实现了基于动态数组的数据结构,而LinkedList是基于链表的数据结构;
对于随机访问get和set,ArrayList要优于LinkedList,因为LinkedList要移动指针;
对于添加和删除操作add和remove,一般大家都会说LinkedList要比ArrayList快,因为ArrayList要移动数据。但是实际情况并非这样,对于添加或删除,LinkedList和ArrayList并不能明确说明谁快谁慢。
总而言之,在实践中,在集合后面或中间添加元素,或者需要随机地访问其中的元素时,
使用ArrayList会提供比较好的性能;
当你的操作是在集合的前面或中间添加或删除数据,并不是按照顺序访问其中的元素,就
应该使用LinkedList了。
ArrayList和LinkedList区别
ArrayList是实现了基于动态数组的数据结构,而LinkedList是基于链表的数据结构;
对于随机访问get和set,ArrayList要优于LinkedList,因为LinkedList要移动指针;
对于添加和删除操作add和remove,一般大家都会说LinkedList要比ArrayList快,因为ArrayList要移动数据。但是实际情况并非这样,对于添加或删除,LinkedList和ArrayList并不能明确说明谁快谁慢。
那到底是用ArrayList还是用LinkedList呢?
总而言之,在实践中,在集合后面或中间添加元素,或者需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;
当你的操作是在集合的前面或中间添加或删除数据,并不是按照顺序访问其中的元素,就
应该使用LinkedList了。
相关文章推荐
- java基础(集合List-ArrayList、LinkedList、Vector的区别)
- java 集合 之 链表和线性表以及ArrayList的各方法的介绍及示例 及 ArrayList与LinkedList的区别分析 及 ArrayList与Array(数组)的区别
- java源码分析之集合框架 ArrayList和LinkedList的区别05
- (9) java ---- 集合框架图 ArrayList,LinkedList,Vector各自的性能特点及区别
- Java基础之集合List-ArrayList、LinkedList、Vector的底层实现和区别
- java基础之集合List-ArrayList、LinkedList、Vector的区别
- Java基础之集合类如ArrayList、LinkedList、HashMap、HashTable的区别
- 【Java集合list】ArrayList和LinkedList区别
- java中关于List中ArrayList和LinkedList的一些区别
- Java集合:List、Set和Map的区别,ArrayList和LinkedList有何区别..........
- java中关于ArrayList,LinkedList,HashSet,Vector,TreeSet的区别和使用
- Java中LinkedList与ArrayList有什么区别
- Java 中ArrayList 和 LinkedList的区别
- java集合中ArrayList和LinkedList的各自特性
- Java基础之ArrayList与LinkedList、Vector,以及HashMap与HashTable的区别
- Java中Hashset、HashMap、ArrayList、LinkedList、Vector之间的联系与区别
- Java基础知识_集合(ArrayList & LinkedList & Vector & 迭代器)
- Java中的ArrayList、Vector和LinkedList的区别
- Java中ArrayList和 LinkedList区别
- Java中ArrayList和LinkedList区别