ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:
1、动态的增加和减少元素;
2、实现了ICollection和IList接口 ;
3、灵活的设置数组的大小;
//创建一个动态数组
ArrayList list = new ArrayList();
//给数组进行赋值
for (int i=0; i<10; i++) {
list.add("abc");
}
System.out.print(list);
输出的结果:[abc, abc, abc, abc, abc, abc, abc, abc, abc, abc]
ArrayList提供了两种插入的方法,一种是默认插入元素,一种是指定插入元素。默认插入即插入到数组的末尾,指定插入即插入到数组指定的位置。
//数组的默认插入
list.add("bbb"); //默认添加到数组的末尾
System.out.print(list);
输出的结果:[abc, ccc, abc, abc, abc, abc, abc, abc, abc, abc, abc, bbb]
//数组指定的插入
list.add(0,"bbb"); //认添加到数组的末尾
System.out.print(list);
输出结果:[bbb, abc, abc, abc, abc, abc, abc, abc, abc, abc, abc]
移除此列表中指定位置上的元素。向左移动所有后续元素(将其索引减 1)。
//创建一个动态数组
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.remove(0);
System.out.print(list);
输出结果:[2, 3]
移除此列表中首次出现的指定元素(如果存在)。如果列表不包含此元素,则列表不做改动。
//创建一个动态数组
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.remove("1");
System.out.print(list);
输出结果:[2, 3]
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.clear();
System.out.print(list);
移除此列表中的所有元素。此调用返回后,列表将为空。
//创建一个动态数组
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.clear();
System.out.print(list);
输出结果:[]
用指定的元素替代此列表中指定位置上的元素。
//创建一个动态数组
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.set(0, "0");
System.out.print(list);
输出结果:[0, 2, 3]
返回此列表中指定位置上的元素。
//创建一个动态数组
ArrayList list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
System.out.print(list.get(1));
输出结果:2