📜  Java中的 Collections.nCopies()(1)

📅  最后修改于: 2023-12-03 14:42:46.041000             🧑  作者: Mango

Java中的 Collections.nCopies()

在Java中,Collections类提供了许多有用的静态方法来操作集合数据。其中之一是nCopies()方法。nCopies()方法可以用来创建一个初始化了指定数量的同一元素的不可变列表。

方法声明
public static <T> List<T> nCopies(int n, T o)
参数说明
  • n : 生成的List中,元素的个数
  • o : 生成的List中,每个元素的值
返回值

nCopies()方法返回一个指定数量和值的不可变列表。

示例代码
import java.util.Collections;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        // 创建一个包含10个元素,每个元素都是字符串"hello"的不可变列表
        List<String> list = Collections.nCopies(10, "hello");
        System.out.println(list);
    }
}

输出结果:

[hello, hello, hello, hello, hello, hello, hello, hello, hello, hello]
注意事项
  • nCopies()方法返回的List是不可变的(immutable),不允许添加或删除元素。
  • nCopies()方法生成的List中所有元素都相同,也就是说,它们是同一个对象的引用。因此,如果您在一个元素上做出更改,它将反映在所有其他元素上。
  • 如果您需要创建一个可变的列表,那么您应该使用ArrayListLinkedList等其他List实现。
  • nCopies()方法返回的List是完全相同的,因此,对于非基本类型而言,它们引用的是同一个对象。因此,如果您更改此对象的状态,则所有其他引用都将反映此更改。