java面试题

当前位置: 面试问题网 > java面试题 > 解释一下ArrayList Vector和LinkedList的实现和区别

解释一下ArrayList Vector和LinkedList的实现和区别

JDK 有几种有序集合java.util.List的实现方法,三个最熟悉的是Vector, ArrayList和LinkedList. 在Java性能方面问的比较多的就是这三个List的性能区别。
  
   Vector和ArrayList都是基于储存元素的Object[] array来实现的,是根据索引来访问元素。Vector和ArrayList最大的区别就是synchronization(同步)的使用, 抛开两个只在序列化过程中使用的方法不说,没有一个ArrayList的方法是同步的,相反,绝大多数Vector的方法法都是直接或者间接的同步的,因 此,Vector是线程安全的而ArrayList不是,这样就造成ArrayList比Vector更快些,不过在最新的JVM中,这两个类的速度差别 是很小的,几乎可以忽略不计。
  
   Vector和ArrayList的实现在索引访问和元素更新方面有着非常优秀的性能,因为不需要花费精力做范围检查(Range Checking),所以从Lise的末端添加元素,删除元素也有着非常优秀的性能,除非List的存储容量不足而需要扩展内部数组的长度,这种情况下插 入和删除数据需要一个数组的拷贝(当内部数组需要扩展的时候需要两次拷贝),需要拷贝的元素数量是List的长度减去索引号(也就是要插入和删除的索引号 与整个List的最后一个索引号),对插入来讲,插入元素到List的第一个位子的性能最差,插入到最后一个位子的性能最好,数组拷贝所需的时间会根据元 素的数量增加而显著增加。
  
   LinkedList的实现
  
   LinkedList是用双向链接节点的List实现的,根据索引访问元素的时候,你需要访问所有的节点只到到达你要的那个索引节点。往LinkedList插入元素是很简单的,只需要到达索引节点直接在这个节点前插入一个节点。
  
   LinkedList的实现使根据索引访问元素和更新元素性能不如ArrayList和Vector好,因为你需要访问很多的节点才能到达你所要的那个节点。插入元素和删除元素跟插入和删除节点距list末端的距离有最大关系。
  
   性能对比:
  
   对较短的List来讲,ArrayList和Vector的性能非常接近,如果你只需要一个定长的List,Java数组(Ojbect[])的性能超过其他任何list类型。
  
   整体来讲,ArrayList在绝大多数情况下都有着更好的性能,包括根据索引插入元素,或者插入到随即的位子,如果总是要插入数据到List的最前端,LinkedList的性能最好,但是你应该可以用反ArrayList得到更好的性能.

【解释一下ArrayList Vector和LinkedList的实现和区别】相关文章

1. 解释一下ArrayList Vector和LinkedList的实现和区别

2. 说出ArrayList,Vector, LinkedList的存储性能和特性

3. 若通过ObjectOutputStream向一个文件中多次以追加方式写入object,为什么用ObjectInputStream读取这些object时会产生StreamCorruptedExcepti

4. Vector, ArrayList, HashTable, HashMap哪些是线程安全的,哪些不是

5. Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型

6. OLEDBConnection和SQLConnection有什么区别

7. 介绍一下HDLC(High-Level Data Link Control)高层数据链路协议

8. 什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议

9. Collection和Collections的区别

10. mysql_pconnect()和mysql_connect()有什么区别

本文来源:https://www.mianshiwenti.com/a12347.html

点击展开全部

《解释一下ArrayList Vector和LinkedList的实现和区别》

将本文的Word文档下载到电脑,方便收藏和打印

推荐程度:

进入下载页面

﹝解释一下ArrayList Vector和LinkedList的实现和区别﹞相关内容

「解释一下ArrayList Vector和LinkedList的实现和区别」相关专题

其它栏目

也许您还喜欢