package ch03;
import java.util.*;
public class ArrayListDemo {
public static List<String>arrayList;
//初始化链表
public static void init()
{
arrayList=new ArrayList<String>(4);//四个类型为String储存地址
//即使初始化长度arrayList还是根据需要动态分配
System.out.println("初始化长度:"+arrayList.size());//+是连接符 arrayList.size为0
//添加元素
arrayList.add("first");
arrayList.add("second");
arrayList.add("third");
arrayList.add("forth");
}
//打印链表信息
public static void printInfo()
{
System.out.println("增加元素后的长度:"+arrayList.size());//传进去4个String类型的元素
//通过集合构造链表
ArrayList<String>arrayList2=new ArrayList<String>(arrayList);
//AbstractCollection对toString提供实现
System.out.println("arrayList:"+arrayList);
System.out.println("arrayList2:"+arrayList2);
}
//对链表修改、删除操作
public static void modify()
{
//添加一个元素
arrayList.add(1,"insert data");
System.out.println("增加后得元素长度:"+arrayList.size());
//删除一个元素
arrayList.remove("second");
System.out.println("删除'second'元素后得长度"+arrayList.size());
arrayList.remove(2);
System.out.println("删除第三个元素后的长度"+arrayList.size());
//删除一个不存在的元素
arrayList.remove("nothing");
System.out.println("删除'nothing'元素后的长度:"+arrayList.size());
//抛出IndexOutOfBoundsExption
//arrayList.remove(10);
}
//从List中获取数组并进行遍历
public static void toArray()
{
Object[] arr=arrayList.toArray();
for(int i=0;i<arr.length;i++)
{
String str=(String)arr[i];
System.out.println((i+1)+":"+str);
}
}
public static void main(String args[])
{
init();
printInfo();
modify();toArray();
}
}
输出结果: