Java EnumSet range() 方法



描述

Java EnumSet range(E from,E to) 方法创建一个枚举集,最初包含由两个指定端点定义的范围内的所有元素。

声明

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

public static <E extends Enum<E>> EnumSet<E> range(E from,E to)

参数

  • from − 范围内的第一个元素

  • to − 范围内的最后一个元素

返回值

此方法返回一个枚举集,最初包含由两个指定端点定义的范围内的所有元素。

异常

  • NullPointerException − 如果 first 或 last 为 null

  • IllegalArgumentException − 如果 first > last

使用范围在枚举上创建 EnumSet 示例

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

package com.tutorialspoint;

import java.util.*;

public class EnumSetDemo {

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

   public static void main(String[] args) {

      // create a set
      EnumSet<Numbers> set;

      // add four element using range
      set = EnumSet.range(Numbers.TWO, Numbers.FIVE);

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

输出

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

Set:[TWO, THREE, FOUR, FIVE]

使用具有值的范围在枚举上创建 EnumSet 示例

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

package com.tutorialspoint;

import java.util.*;

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
      EnumSet<Number> set;

      // add four element using range
      set = EnumSet.range(Number.TWO, Number.FIVE);

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

输出

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

Set:[TWO(2), THREE(3), FOUR(4), FIVE(5)]
java_util_enumset.htm
广告