您的位置:首页 > 编程语言 > Java开发

Java中ArrayList与LinkedList的区别

2015-04-18 21:29 267 查看
两者的区别如下:

1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 

2.对于随机访问get和set,ArrayList优于LinkedList,因为LinkedList要移动指针。 (可以类比数组的下标访问)

3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。(类比链表)

【注意】ArrayList使用一个内置的数组来存储元素,这个数组的起始容量是10.当数组需要增长时,新的容量按如下公式获得:新容量=(旧容量*3)/2+1,也就是说每一次容量大概会增长50%。

可以这样说:当操作是在一列数据的后面添加数据而不是在前面或中间,并且需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;当你的操作是在一列数据的前面或中间添加或删除数据,并且按照顺序访问其中的元素时,就应该使用LinkedList了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java arraylist linkedlist