黑马程序员技术交流社区

标题: 集合中ArrayList和LinkedList的具体使用方法 [打印本页]

作者: 胡志翔    时间: 2013-10-22 23:35
标题: 集合中ArrayList和LinkedList的具体使用方法
集合中,ArrayList和LinkedList底层数据结构一个是数组结构,一个是链表数据结构。
但在实际开发中,具体怎么应用?
作者: 张运    时间: 2013-10-22 23:54
在实际开发中你要看你的项目的需求了。如果在你的项目中的对数据的增删改的时候,我们使用链表存储数据。LinkedList底层使用了链表,链表对增删改的操作性能比较高,如果在项目中你对数据的查询比较多,那么我们就使用arraylist,以为它的底层使用的是数组,查询性能比较好。
作者: 马晓平    时间: 2013-10-22 23:55
比较一下ArrayList和LinkedList:
作者: 马晓平    时间: 2013-10-22 23:55
比较一下ArrayList和LinkedList:
1.ArrayList是基于数组,LinkedList基于链表实现。
2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。
3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。
4.查找操作indexOf,lastIndexOf,contains等,两者差不多。这里只是理论上分析,事实上也不一定,比如ArrayList在末尾插入和删除数据就不设计到数据移动,不过还是有这么个建议:随机访问比较多的话一定要用ArrayList而不是LinkedList,如果需要频繁的插入和删除应该考虑用LinkedList来提高性能。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2