登录
首页 >  文章 >  java教程

Java中如何用Collections.fill填充集合元素

时间:2026-04-05 18:12:18 337浏览 收藏

Java中的Collections.fill方法是一种高效、简洁的集合批量赋值工具,它能将指定元素统一填充到已初始化且具备实际容量的列表中,彻底替换原有所有元素——既不创建新列表,也不改变列表结构,特别适用于需要快速重置或初始化列表内容的场景,如测试数据准备、缓存预热或状态批量更新,掌握其使用前提(如避免空指针、确保列表非空且有确定大小)能让代码更健壮、更易维护。

如何在Java中使用Collections.fill填充元素

在Java中,Collections.fill 方法用于将指定的元素填充到列表中的所有位置。这个方法不会创建新列表,而是替换已有列表中的元素值。使用前需确保列表已经初始化并具有一定的大小。

方法签名

public static void fill(List list, T obj)

该方法接受两个参数:要操作的列表和用于填充的元素。它会把列表中的每一个元素都替换为传入的对象引用。

基本使用步骤

要正确使用 Collections.fill,需要先创建一个有实际容量的列表。常见方式是使用 Arrays.asList 或先添加足够数量的元素。

  • 创建一个包含固定数量元素的列表,例如用 Collections.nCopies 初始化
  • 或将已有列表传入 fill 方法
  • 调用 Collections.fill(list, value) 填充新值

代码示例

下面是一个简单例子:

List list = new ArrayList(Collections.nCopies(5, "default")); System.out.println(list); // 输出: [default, default, default, default, default]

Collections.fill(list, "Java"); System.out.println(list); // 输出: [Java, Java, Java, Java, Java]

这里先用 Collections.nCopies 创建了包含5个 "default" 的列表,然后通过 fill 将所有元素替换为 "Java"。

注意事项

不能对 null 列表或未初始化元素的空列表使用 fill。比如直接 new ArrayList() 后调用 fill 不会改变任何内容,因为列表长度为0。

  • 确保列表不为空且已有元素
  • fill 操作的是对象引用,多个位置指向同一对象时需注意可变性
  • 适用于 String、Integer 等不可变类型更安全
基本上就这些。只要列表有实际元素,Collections.fill 就能快速统一赋值。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《Java中如何用Collections.fill填充集合元素》文章吧,也可关注golang学习网公众号了解相关技术文章。

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>