首页 > 其他 > 详细

集合区别(list和linkedlist的区别)?

时间:2017-11-06 12:07:39      阅读:148      评论:0      收藏:0      [点我收藏+]

1.list和linkedlist都是有序可重复,为什么还要用linkedlist呢?

数组和数组列表都有一个重大的缺陷,这就是从数组的中间位置删除一个元素需要付出很大的代价,其原因是数组中处于被删除元素之后的所有元素都要向数组的前端移动。在数组的中间的位置插入一个元素也是如此。如下图:

技术分享

这个问题就靠LinkedList(链表)来解决。链表将每个对象存放在独立的节点中,每个节点还存放着序列中上一个节点的引用和下一个节点的引用,如下图:

技术分享

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

   对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。

   对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。

集合区别(list和linkedlist的区别)?

原文:http://www.cnblogs.com/super-chao/p/7792425.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!