Java EnumSet noneOf() 方法



描述

Java EnumSet noneOf(Class<E> elementType) 方法创建一个指定元素类型的空枚举集。

声明

以下是java.util.EnumSet.noneOf() 方法的声明

public static <E extends Enum<E>> EnumSet<E> noneOf(Class<E> elementType)

参数

elementType − 此枚举集的元素类型的类对象。

返回值

此方法不返回值。

异常

NullPointerException − 如果 elementType 为 null

不使用给定枚举值创建 Enumset 的示例

以下示例演示了如何使用 Java EnumSet noneOf(Class) 方法填充 EnumSet 实例。我们创建了一个枚举 Numbers。然后使用枚举值创建了一个 EnumSet 实例。使用 noneOf(Class) 方法,另一个 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 all Numbers class
      EnumSet<Numbers> set1 = EnumSet.allOf(Numbers.class);

      // print set1
      System.out.println("Set1:" + set1);

      // create a second set which is empty
      EnumSet<Numbers> set2 = EnumSet.noneOf(Numbers.class);

      // print the new set
      System.out.println("Set2:" + set2);
   }
}

输出

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

Set1:[ONE, TWO, THREE, FOUR, FIVE]
Set2:[]

不使用给定带值的枚举创建 Enumset 的示例

以下示例演示了如何使用 Java EnumSet noneOf(Class) 方法填充 EnumSet 实例。我们创建了一个枚举 Numbers。然后使用枚举值创建了一个 EnumSet 实例。使用 noneOf(Class) 方法,另一个 enumSet 在没有枚举值的情况下被填充,并打印结果 enumSet。

package com.tutorialspoint;

import java.util.EnumSet;

public class EnumSetDemo {

   // create an enum
   public enum Number {
      ONE("1"), TWO("2"), THREE("3"), FOUR("4"), FIVE("5");

      // instance variable for enum
      private String value;

      public String getValue() {
         return this.value;
      }

      // constructor should be private or protected
      private Number(String value) {
         this.value = value;
      }

      @Override
      public String toString() {
        return this.name() +"(" + this.value + ")";
      }
   };

   public static void main(String[] args) {

      // create a set that contains all Numbers class
      EnumSet<Number> set1 = EnumSet.allOf(Number.class);

      // print set1
      System.out.println("Set1:" + set1);

      // create a second set which is empty
      EnumSet<Number> set2 = EnumSet.noneOf(Number.class);

      // print the new set
      System.out.println("Set2:" + set2);
   }
}

输出

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

Set1:[ONE(1), TWO(2), THREE(3), FOUR(4), FIVE(5)]
Set2:[]
java_util_enumset.htm
广告