Java学习笔记【泛型数组列表ArrayList】

时间:2022-01-25 19:47:33

1、ArrayList

声明和构造一个保存Employee对象的数组列表:
    ArrayList<Employee> staff = new ArrayList<Employee>();
//Java7中可以简写为:
ArrayList<Employee> staff = new ArrayList<>();
将对象添加到数组列表的方法:
    staff.add(new Employee("zhangsan",...));
staff.add(new Employee("lisi",...));
如果清楚或能够估计出数组可能存储的元素数量,就可以在填充数组之前调用ensureCapacity();
    staff.ensureCapacity(100);  //分配一个100个对象的内部数组
ArrayList<Employee> staff = new ArrayList<>(100);//将初始容量传递给ArrayList构造器
size方法返回数组列表中包含的实际元素数目:
staff.size();

2、访问数组列表元素

get和set方法:
    //设置第i个元素:
staff.set(i, harry);// 等价于数组中的a[i] = harry;

//获得数组列表的元素
Employee e = staff.get(i); //Employee e = a[i];
ArrayList转换为数组使用技巧示例:
    ArrayList<X> list = new ArrayList<>();
while(...)
{
x = ...;
list.add(x);
}
//执行完之后使用toArray方法将数组元素拷贝到一个数组中。
X[] a = new X[list.size=()];
list.toArray(a);

循环遍历数组列表:
for (Employee e : staff)
do something with e;
//等价于
for(int i = 0; i <staff.size(); i++)
{
Employee e = staff.get(i);
do something with e;
}