
arraylist 的 `size()` 方法可随时调用,初始化后未添加任何元素时返回 0,是判断集合初始状态的可靠方式。
在 Java 中,ArrayList 是动态数组实现,其 size() 方法返回当前实际存储的元素个数(而非底层数组容量)。即使你刚刚声明并初始化了一个空 ArrayList,只要尚未调用 add()、addAll() 等修改方法,size() 就始终返回 0。
例如:
import java.util.ArrayList;
import java.util.Scanner;
public class ArrayListSizeDemo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
ArrayList value = new ArrayList<>(); // 初始化空列表
System.out.println("Current size before input: " + value.size()); // 输出:0
System.out.print("Enter the number of elements needed: ");
int n = in.nextInt();
for (int i = 1; i <= n; i++) {
System.out.printf("Enter value %d: ", i);
value.add(in.nextInt());
}
System.out.println("Final size: " + value.size()); // 输出用户输入的元素总数
}
} ✅ 关键点说明:
- size() 是 O(1) 操作,安全高效,无需担心性能开销;
- 不要混淆 size() 与 capacity()(后者无公共 API,ArrayList 内部容量需通过反射或 ensureCapacity() 间接推断);
- 即使执行 value.clear() 或 value.removeAll(...), size() 同样即时反映当前元素数量。
? 提示:在用户输入流程开始前打印 value.size(),不仅能验证初始化状态,还可作为调试锚点,帮助确认逻辑是否按预期从空集合起步。










