ArrayList<E>是一个可动态调整大小的数组,允许null类型的元素。我们知道,Java中的数组大小在初始化时就必须确定下来,而且一旦确定就不能改变,这会使得在很多场景下不够灵活。ArrayList<E>很好地帮我们解决了这个问题,当我们需要一个能根据包含元素的多少来动态收缩伸张的数组时,那么ArrayList<E>正是我们所需要的。
我们先来看看这个类的常用方法:
1.向集合中添加元素:list.add(需要添加的元素)
2.读取集合中的元素:list.get(int index),括号中为元素编号索引值,和数组相同,从0开始
3.删除集合中的元素:list.remove(int index)
4.获得集合中的元素个数:list.size()
public class Demo03ArrayListMethod {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
boolean success = list.add("成龙");
System.out.println("添加是否成功"+success);
System.out.println(list);
list.add("姚明");
list.add("刘德华");
list.add("黎明");
list.add("郭富城");
System.out.println(list);
//下标从0开始
String name= list.get(3);
System.out.println("索引3号位置是:"+name);
int size1= list.size();
System.out.println(size1);
System.out.println("===============");
String whoRemoved=list.remove(3);
System.out.println("被移除的是:"+whoRemoved);
System.out.println(list);
int size2= list.size();
System.out.println(size2);
for(int i=0;i< list.size();i++)//一种遍历方式
{
System.out.println(list.get(i));
}
}
}
注意:对于ArrayList集合来说,直接打印得到的不是地址值,而是集合的内容,这一点和数组不同。
当我们插入了比较多的元素,导致ArrayList快要装满时,它会自动增长容量。而自动增长容量是通过创建一个新的容量更大的ArrayList对象,再把原来的所有元素复制过去实现的。若要想避免这种开销,在知道大概会容纳多少数据时,我们可以在构造时指定好它的大小以尽量避免它自动增长的发生;我们也可以调用ensureCapacity方法来增加ArrayList对象的容量到我们指定的大小。ArrayList有以下三个构造器:
ArrayList()
ArrayList(Collection<? extends E> c)
ArrayList(int initialCapacity)
我们可以把ArrayList<E>看成是一个类,也可以看成是一个数组,根据不同的情况选择不同的用法,我们可以到动力节点在线了解更多的相关知识。
提枪策马乘胜追击04-21 20:01
代码小兵92504-17 16:07
代码小兵98804-25 13:57
杨晶珍05-11 14:54