LinkedList和ArrayList的区别

原创 2015年11月20日 09:28:54

对于集合Collection下的list接口,有两个实现类,ArrayList和LinkedList,那么他们两个有什么区别呢。

ArrayList的底层由数组实现,而LinkedList的底层由双向链表实现,底层的不同才是他们区别的根源。

然而因为他们继承于同一个父接口,他们的很多方法都是相同的。

关于LinkedList底层详解:http://blog.csdn.net/heyjj1226/article/details/49872693

关于ArrayList的主要方法详解:http://blog.csdn.net/heyjj1226/article/details/49785075


实际上只要我们明白了数组和链表的区别,我们就能明白ArrayList和LinkedList的区别。

比如我们想要进行查询功能,我们就应该使用ArrayList,因为他的底层——数组的每个元素都有自己的下标,方便于我们的查找目的。

再比如我们想要进行删除和添加,我们就应该使用LinkedList,因为他的底层——链表会动态的进行存储分配,更适应数据动态增减的情况,而数组则不同,一旦我们对他进行插入或者删除操作,进行操作元素的位置之后的元素则全部需要移动,这是一件非常不划算的事情。

版权声明:本文为博主原创文章,未经博主允许不得转载。

ArrayList LinkedList Vector区别

  • 2014年08月22日 14:15
  • 20KB
  • 下载

java集合框架05——ArrayList和LinkedList的区别

前面已经学习完了List部分的源码,主要是ArrayList和LinkedList两部分内容,这一节主要总结下List部分的内容。 List概括 先来回顾一下List在Collection中的的框架图...
  • eson_15
  • eson_15
  • 2016年04月13日 20:39
  • 7603

ArrayList和LinkedList底层实现的区别

1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。     2.对于随机访问get和set,ArrayList优于LinkedList,因为Array...

ArrayList和LinkedList的大致区别:

一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,Ar...

ArrayList和LinkedList的用法区别:

1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedLis...

java中ArrayList与LinkedList的原理及区别

ArrayListArrayList实现原理就是动态数组,为什么叫动态数组呢,就是当ArrayList容量扩大时,底层的数组的容量会自动扩大50%,并且ArrayList是线程不安全的。 其优点是查询...

java-----容器类总结之ArrayList与LinkedList的区别

我们都知道java中关于List的实现有两种方式:ArrayList与LinkedList,那么今天我们来看看两者在使用过程中的一些注意事项;        首先来看看两者的类结构图:...

深入理解ArrayList与LinkedList的区别

一、先来看看ArrayList与LinkedList 在JDK中所在的位置     从图中可以看出,ArrayList与LinkedList都是List接口的实现类,因此都实...

深入理解ArrayList与LinkedList的区别

认识和理解ArrayList   ArrayList实现了List接口,它是以数组的方式来实现的,数组的特性是可以使用索引的方式来快速定位对象的位置,因此对于快速的随机取得对象的需求,使用...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LinkedList和ArrayList的区别
举报原因:
原因补充:

(最多只允许输入30个字)