概述
Array和ArrayList
Array:
1.数组长度固定不变
2.可以保存基本数据和对象,但是一个数组中保存的一定是同一种数据类型
ArrayList:
1.数组长度动态变化,可以自动扩容
2.只能保存对象,但是数据类型可以不同,因为ArrayList也可以保存Object类型
3.作为Array的增强版,方法更多样化,addAll(),removeAll()...等方法
总结:对于程序运行期间数据不变的话,使用全局数组;如果单纯只是想要一数组的形式保存数据,不频繁的进行数据增加、删除等操作,使用ArrayList
ArrayList和LinkedList
ArrayList:
1.基于索引的数据接口,,底层是数组,使用索引搜索数据查找数据速度是很快的
2.对于添加,插入,删除等操作,每次都需要重新计算大小和更新索引
3.存储的是索引位置的实际的数据
LinkedList:
1.基于双链表的数据接口,每个元素都和它的前一个元素和后一个元素链接在一起,查找数据效率低下,时间复杂度为O(n)
2.插入,添加,删除等操作速度很快,因为他不需要重新计算大小和更新索引
3.占用的内存大,每个节点存储了实际数据和前后节点的引用
总结:ArrayList基于数组实现,适合查询;LinkedList基于链表实现,适合增删操作。
最后
以上就是平淡发夹为你收集整理的java中Array,ArrayList,LinkedList区别和使用场景Array和ArrayListArrayList和LinkedList的全部内容,希望文章能够帮你解决java中Array,ArrayList,LinkedList区别和使用场景Array和ArrayListArrayList和LinkedList所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复