推荐使用 isempty() 方法判断 arraylist 是否为空,因其语义清晰、性能高效;若引用可能为 null,需先判空再调用,即 list != null && list.isempty()。

Java 中判断 ArrayList 是否为空,最常用、最推荐的方式是调用 isEmpty() 方法。它语义清晰、性能高效,且比手动比较 size() == 0 更具可读性。
使用 isEmpty() 方法(推荐)
这是标准、安全、直观的做法:
-
isEmpty()内部直接返回size == 0,没有额外开销 - 代码意图明确,一眼看出“检查是否为空”
- 适用于所有实现了
List接口的集合(如ArrayList、LinkedList)
示例:
ArrayList<string> list = new ArrayList();
if (list.isEmpty()) {
System.out.println("列表为空");
}</string>
检查 size() == 0
虽然可行,但不如 isEmpty() 直观:
Java Maven 项目审查工作流的通用输入处理。当 Java Maven 项目以 ZIP压缩包或 GitLab 仓库 URL 形式提供且需要...时使用。
- 功能等价,性能几乎无差别
- 但语义稍弱——
size()是获取长度,再做比较,多了一步逻辑 - 容易误写成
size() (虽不可能,但无意义)
示例:
if (list.size() == 0) {
System.out.println("列表为空");
}
注意:先判空再调用方法(防 NullPointerException)
如果 ArrayList 引用本身可能为 null,必须先检查引用非空,再调用 isEmpty():
- 直接对
null调用isEmpty()会抛出NullPointerException - 稳妥写法:
list != null && list.isEmpty()
示例:
if (list != null && list.isEmpty()) {
System.out.println("列表存在且为空");
}
不建议:用 == null 判断是否为空
list == null 检查的是引用是否为空,不是列表内容是否为空:
-
null表示“没创建对象”,不是“空列表” - 一个新建的
new ArrayList()是非null的空列表 - 混淆二者会导致逻辑错误(比如跳过初始化或误报异常)
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










