清空 arraylist 元素用 clear() 方法,判断是否为空用 isempty() 方法;clear() 将有效元素置 null 并置 size 为 0,引用和容量不变;isempty() 语义清晰,优于 size() == 0 或 null 判断。

清空 ArrayList 元素用 clear() 方法,判断是否为空用 isEmpty() 方法——这是最直接、高效且推荐的方式。
怎么清空 ArrayList 的所有元素
调用 clear() 方法即可移除列表中所有元素,内部会将底层数组中所有有效位置设为 null(避免内存泄漏),同时将 size 置为 0。
Java项目代码review工具。分析Git变更+完整调用链路上下文,推断业务需求,进行多维度评分和分类汇总,生成完整PRD文档。包含细粒度Java代码审查清单(Null安全、异常处理、Streams、并发、equals/hashCode、资源管理、API设计、性能、MyBatis/ORM、事务边界、SQL/DD...
- 操作后 list 仍为同一个对象,引用不变,容量(capacity)也不变
- 无需重新 new ArrayList(),更轻量、更安全
- 示例:list.clear();
怎么判断 ArrayList 是否为空
使用 isEmpty() 方法,它等价于 size() == 0,但语义更清晰、可读性更好。
- 返回 true 表示没有元素,false 表示至少有一个元素
- 不要用 list == null 判断“空”,那是判引用是否为空,不是判集合是否为空
- 若 list 可能为 null,应先判空再调用:if (list != null && list.isEmpty()) {...}
其他常见误区与替代方式
有些写法看似可行,但不推荐:
- list = new ArrayList(); —— 创建新对象,原引用丢失,旧对象若还有其他引用可能造成意外
- list.removeAll(list); —— 虽能清空,但效率低(遍历 + 查找),且逻辑绕弯
- list.subList(0, list.size()).clear(); —— 本质还是调 clear,多此一举
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










