Java 简明教程

Java EnumSet Class

Introduction

Java EnumSet 类是专门用于 enum 类型的 Set 实现。以下是对 EnumSet 的重要说明−

  1. enum set 中的所有元素都必须来自一个单独的 enum 类型,该类型在创建 set 时明确或隐式指定。

  2. Enum 集在内部表示为位向量。

  3. EnumSet 不是同步的。如果多个线程同时访问 enum set,并且至少有一个线程修改了 set,则应该在外部同步。

Class declaration

以下是*java.util.EnumSet* 类的声明−

public abstract class EnumSet<E extends Enum<E>>
   extends AbstractSet<E>
   implements Cloneable, Serializable

Class methods

Methods inherited

此类从以下类中继承方法:

  1. java.util.AbstractSet

  2. java.util.AbstractCollection

  3. java.util.Object

  4. java.util.Set

Creating an EnumSet Example

以下示例显示了 Java EnumSet 的 of(E) 方法来填充 EnumSet 实例。我们创建了一个枚举 Numbers。然后使用枚举值创建了 EnumSet 实例,并打印了结果 enumSet。

package com.tutorialspoint;

import java.util.EnumSet;

public class EnumSetDemo {

   // create an enum
   public enum Numbers {
      ONE, TWO, THREE, FOUR, FIVE
   };

   public static void main(String[] args) {

      // create a set that contains an enum
      EnumSet<Numbers> set = EnumSet.of(Numbers.ONE);

      // print set
      System.out.println("Set:" + set);
   }
}

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

Set:[ONE]