Java.util.EnumSet 类

java.util.EnumSet.copyOf() 方法用于创建从指定集合初始化的枚举集。

语法

public static <E extends Enum<E>> EnumSet<E> copyOf(Collection<E> c)
  • 1

这里,E 是容器维护的元素类型。

参数

c 指定从中初始化此枚举集的集合。

返回值

返回从给定集合初始化的枚举集。

异常

  • 如果 c 为 null,则抛出 NullPointerException
  • 如果 c 不是 EnumSet 实例且不包含任何元素,则抛出 IllegalArgumentException

示例:

在下面的示例中, java.util.EnumSet.copyOf() 方法用于创建从指定集合初始化的枚举集。

import java.util.*;

public class MyClass {
  
  //创建一个枚举
  public enum weekday{
    SUN, MON, TUE, WED, THU, FRI, SAT
  }

  public static void main(String[] args) {
    //创建一个集合
    Collection<weekday> col = new ArrayList<weekday>();

    //填充集合
    col.add(weekday.SUN);
    col.add(weekday.SAT);

    //打印集合
    System.out.println("Collection contains: "+ col); 

    //创建EnumSet并初始化
    //它带有集合
    EnumSet<weekday> Set;
    Set = EnumSet.copyOf(col);
    
    //打印Set的内容
    System.out.println("Set contains: "+ Set); 
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

上述代码的输出将是:

Collection contains: [SUN, SAT]
Set contains: [SUN, SAT]
  • 1
  • 2