赞
踩
Java 集合框架中最常用的类之一。ArrayList
是基于数组的动态数组,它提供了动态增长和缩减容量的功能,因此非常适合存储和操作元素数量可变的集合。
ArrayList
使用一个数组来存储元素。ArrayList
创建一个固定大小的数组来保存元素。ArrayList
会创建一个新的更大的数组,并将所有元素从旧数组复制到新数组中。ArrayList
中添加元素时,它会检查当前数组是否已满。ArrayList
会创建一个新的数组,其大小通常是当前数组大小的两倍,然后将所有元素从旧数组复制到新数组中。ArrayList
实现了一种称为 “grow” 的策略,即当数组容量不足时,新数组的大小通常是当前数组大小的两倍。ArrayList
的添加操作的时间复杂度是 O(1),但在数组容量不足时可能会触发 O(n) 的复制操作,其中 n 是当前元素数量。ArrayList
允许通过 ensureCapacity(int minCapacity)
方法手动设置底层数组的容量。这个方法可以用于在大量元素添加之前预先分配足够的内存,以提高性能。import java.util.ArrayList;
// 创建一个 ArrayList 对象
ArrayList<String> list = new ArrayList<>();
// 添加单个元素
list.add("Apple");
// 在指定位置添加元素
list.add(1, "Banana");
// 获取指定位置的元素
String fruit = list.get(0);
// 修改指定位置的元素
list.set(0, "Orange");
// 删除指定位置的元素
String removedElement = list.remove(1);
// 删除指定元素的第一个匹配项
boolean isRemoved = list.remove("Banana");
// 获取 ArrayList 的大小(元素数量)
int size = list.size();
// 检查 ArrayList 是否为空
boolean isEmpty = list.isEmpty();
// 使用 for-each 循环遍历 ArrayList
for (String item : list) {
System.out.println(item);
}
// 使用迭代器遍历 ArrayList
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String item = iterator.next();
System.out.println(item);
}
// 将 ArrayList 转换为数组
String[] array = list.toArray(new String[0]);
// 清空 ArrayList
list.clear();
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。