ArrayList
特点:
- 自动扩容,相当于变长数组
- 元素的类型可以不相同
构造函数的参数:
- 不传递参数:空数组,长度为 0。
- 传递 int 值:初始化数组的长度。
- 传递 Collection:用指定的数据初始化 ArrayList。
常用方法:
- add, size, get, set, remove, addAll
- isEmpty, contains, indexOf, lastIndexOf, clone, toArray
- clear 清空所有的元素。
- removeAll 清空指定的集合(子集合)中的数据。
注意事项:
访问 ArrayList 数组时,索引下标不能超过数组的长度 length(数组中元素的个数)。长度和容量(capacity)不是一个概念。
示例
// 创建对象
ArrayList list = new ArrayList(); // 小技巧:Ctrl + P 查看初始化时可用的参数信息
System.out.println(list); // []
// 写入数据,第一次写入时,默认会创建长度为 10 的数组
list.add("jack");
list.add("rose");
list.add(10);
// 获取元素的个数
System.out.println(list.size()); // 3
// 访问指定索引(位置)的元素
System.out.println(list.get(0)); // jack
// 遍历
for (int i = 0; i < list.size(); i++) {
System.out.println("元素的值:" + list.get(i));
}
for (Object obj : list) {
System.out.println("元素的val:" + obj);
}
System.out.println(list); // [jack, rose, 10]
// 修改数据
list.set(1, "rose2");
System.out.println(list); // [jack, rose2, 10]
// 删除元素
list.remove(1);
System.out.println(list); // [jack, 10]