Java ArrayList常用方法总结
关于ArrayList
ArrayList是集合框架List接口的实现类(数组实现)
List接口是一个有序的 Collection,使用此接口能够精确的控制每个元素插入的位置,能够通过索引(元素在List中位置,类似于数组的下标)来访问List中的元素,第一个元素的索引为 0,而且允许有相同的元素。List 接口存储一组不唯一,有序(插入顺序)的对象。
ArrayList实现了List的接口,实现了可变大小的数组,随机访问和遍历元素时,提供更好的性能。该类也是非同步的,在多线程的情况下不要使用。ArrayList 增长当前长度的50%,插入删除效率低。
常用方法总结
构建ArrayList
1.不初始化起容量
ArrayList al = new ArrayList();//默认容量为0,当数组容量满时数组会自动一当前数组容量的2倍扩容
2.初始化容量
ArrayList al = new ArrayList(3);//初始容量为3
3.以一个集合或数组初始化
ArrayList al = new ArrayList(a);//a为集合或数组
添加元素
//1.ArrayList名.add(object value)
ArrayList al = new ArrayList();
al.add("a");
//2.将元素插入到索引处(不过其有一定的限制性,必须在数组长度以内插入数组)
al.insert(int index,object value);
删除元素
al.Remove(object obj);//移除数组中的obj元素
al.RemoveAt(int index);//移除索引为index的数字元素
al.RemoveRange(int indext,int count);//移除从索引index开始,移除count个元素
查找元素
查找元素有Contains()、IndexOf()、LastIndexOf()3中方法
//boolean contains(Object o)
al.Contains(object obj);//查找数组中是否有obj元素,返回类型为boolean存在返回true;
IndexOf()有两个重载方法 起用法如下:
//int indexOf(Object o)
al.IndexOf(object obj);//从0开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,如果不存在,返回-1;
al.IndexOf(object obj, int startIndex); //从startIndex开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,
al.IndexOf(object obj, int startIndex, int count); //从startIndex开始想后查找count个元素,如果存在obj元素,则返回其在数组中的位置
al.LastIndexOf()方法与IndexOf()用法相同,它也有两个重载,其不同的是,LastIndexOf(obj)是查找要obj最后出现的位置
获取元素
al.get(index);
获取ArrayList数组长度
al.size();
检查是否为空
//boolean isEmpty()
al.isEmpty();
遍历ArrayList
1.获取数组长度,循环遍历
for(int i = 0, i < al.size(); i++){
}
2.使用for-each循环
for(object e : al){
}