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){
}