A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡志翔 中级黑马   /  2013-10-22 23:35  /  1176 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

集合中,ArrayList和LinkedList底层数据结构一个是数组结构,一个是链表数据结构。
但在实际开发中,具体怎么应用?

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

3 个回复

倒序浏览
在实际开发中你要看你的项目的需求了。如果在你的项目中的对数据的增删改的时候,我们使用链表存储数据。LinkedList底层使用了链表,链表对增删改的操作性能比较高,如果在项目中你对数据的查询比较多,那么我们就使用arraylist,以为它的底层使用的是数组,查询性能比较好。

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

回复 使用道具 举报
比较一下ArrayList和LinkedList:
回复 使用道具 举报
比较一下ArrayList和LinkedList:
1.ArrayList是基于数组,LinkedList基于链表实现。
2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。
3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。
4.查找操作indexOf,lastIndexOf,contains等,两者差不多。这里只是理论上分析,事实上也不一定,比如ArrayList在末尾插入和删除数据就不设计到数据移动,不过还是有这么个建议:随机访问比较多的话一定要用ArrayList而不是LinkedList,如果需要频繁的插入和删除应该考虑用LinkedList来提高性能。

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马