如何使用 Collections.emptyList() 实现安全且节省内存的空列表创建?

2026-04-29 09:181阅读0评论SEO基础
  • 内容介绍
  • 相关推荐

本文共计960个文字,预计阅读时间需要4分钟。

如何使用 Collections.emptyList() 实现安全且节省内存的空列表创建?

该返回的是一个静态单例对象,类型为 `ImmutableCollections.EmptyList(Java 9 及以上)或内部私有静态类(Java 8 及以前)。整个过程中不分配新数组、不创建新对象。所有调用共享同一个实例,内存占用恒定为常量级 —— 本质上就是一个全局共享的空引用容器。

但正因如此,它不允许任何修改操作:调用 add()remove()set() 都会立即抛出 UnsupportedOperationException。这不是 bug,是设计使然。

阅读全文

本文共计960个文字,预计阅读时间需要4分钟。

如何使用 Collections.emptyList() 实现安全且节省内存的空列表创建?

该返回的是一个静态单例对象,类型为 `ImmutableCollections.EmptyList(Java 9 及以上)或内部私有静态类(Java 8 及以前)。整个过程中不分配新数组、不创建新对象。所有调用共享同一个实例,内存占用恒定为常量级 —— 本质上就是一个全局共享的空引用容器。

但正因如此,它不允许任何修改操作:调用 add()remove()set() 都会立即抛出 UnsupportedOperationException。这不是 bug,是设计使然。

阅读全文