ArrayList集合详解
Posted saomoumou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList集合详解相关的知识,希望对你有一定的参考价值。
ArrayList 实现了List的接口,是长度可变的数组,空间是连续的
api默认提供了很多操作ArrayLis的方法,这些方法可以去api里面查询使用
一、这么多方法怎么学?
1.熟练使用常见的方法
2.了解大概还有哪些方法
3.需要用的时候,就查api文档
二、常见的集合有
ArrayList LinkedList ( vector ) HashSet () HashMap (HashTable)
三、arraylist常见方法
(1)size()元素个数
(2)add() 向数组中添加元素
(3)Object : get() 获取集合中指定位置的元素
四、其中LinkedList : 用法跟ArrayList是一样的
1.LinkedList和ArrayLis相同点
(1).都实现了list接口
(2).常用方法基本一样
2.不同点:
(1).底层结构不一样
ArrayList是空间是连续的,LinkedList空间是不连续的,用的是链表。
什么时候用LinkedList?,什么时候用ArrayList?
查询和修改次数相对比较多的是用ArrayList。
删除和新增比较多的时候用LinkedList。
五、ArrayList;查询和修改效率高,删除和新增效率低
原因:查询和修改效率高得原因空间连续的,删除和新增效率低因为涉及到了元素的移动(多了个元素移动的时间)
LinkedList;查询和修改效率低,删除和新增效率高
原因:查询和修改效率低的原因(多了个寻址时间)
计算机中要么空间换时间,要么时间换空间,不可能两全其美。
ArrayList:
add(0,Object); 在集合的第0个位置插入
add() 在集合的最后一个位置插入
get(0) 获取第1个元素
get(list.size()-1) 获取最后一个个元素
LinkedList:
addFirst() 在集合的第0个位置插入
addFirst() 在集合的最后一个位置插入
getFirst() 获取第1个元素
getLast() 获取最后一个个元素
List是干啥的?
临时存储数据,操作数据(冒充数据库的)
以上是关于ArrayList集合详解的主要内容,如果未能解决你的问题,请参考以下文章
Java中 List集合接口主要的实现类ArrayList的详解
Java集合Collection 体系集合详解(ArrayList,LinkedList,HashSet,TreeSet...)