Java集合ncopies()方法



描述

Java集合ncopies(int, T)方法用于返回一个不可变列表,该列表包含指定对象的n个副本。

声明

以下是java.util.Collections.ncopies()方法的声明。

public static <T> List<T> nCopies(int n, T o)

参数

  • n − 返回列表中元素的数量。

  • o − 在返回列表中重复出现的元素。

返回值

方法调用返回一个包含指定对象n个副本的不可变列表。

异常

IllegalArgumentException − 如果n < 0,则抛出此异常。

获取整数的不可变列表示例

以下示例演示了Java集合ncopies(int,T)方法的使用。我们使用ncopies(int, Integer)创建了一个包含一些整数的List对象,并打印了该列表。

package com.tutorialspoint;

import java.util.Collections;
import java.util.List;

public class CollectionsDemo {

   public static void main(String[] args) {
      List<Integer> list = Collections.nCopies(5, 1);

      System.out.println("Collection value: " + list);
   }
}

让我们编译并运行上述程序,这将产生以下结果:

Collection value: [1, 1, 1, 1, 1]

获取字符串的不可变列表示例

以下示例演示了Java集合ncopies(int,T)方法的使用。我们使用ncopies(int, String)创建了一个包含一些字符串的List对象,并打印了该列表。

package com.tutorialspoint;

import java.util.Collections;
import java.util.List;

public class CollectionsDemo {

   public static void main(String[] args) {
      List<String> list = Collections.nCopies(5, "A");

      System.out.println("Collection value: " + list);
   }
}

让我们编译并运行上述程序,这将产生以下结果:

Collection value: [A, A, A, A, A]

获取对象的不可变列表示例

以下示例演示了Java集合ncopies(int,T)方法的使用。我们使用ncopies(int, Student)创建了一个包含一些Student对象的List对象,并打印了该列表。

package com.tutorialspoint;

import java.util.Collections;
import java.util.List;

public class CollectionsDemo {

   public static void main(String[] args) {
      List<Student> list = Collections.nCopies(5, new Student(1, "Julie"));

      System.out.println("Collection value: " + list);
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }
}

让我们编译并运行上述程序,这将产生以下结果:

Collection value: [[ 1, Julie ], [ 1, Julie ], [ 1, Julie ], [ 1, Julie ], [ 1, Julie ]]
java_util_collections.htm
广告