Java Class getEnumConstants() 方法



描述

Java Class getEnumConstants() 方法返回此枚举类的元素,如果此 Class 对象不表示枚举类型,则返回 null。

声明

以下是java.lang.Class.getEnumConstants() 方法的声明

public T[] getEnumConstants()

参数

返回值

此方法返回一个数组,其中包含此 Class 对象表示的枚举类组成的值,其顺序与声明顺序相同;如果此 Class 对象不表示枚举类型,则返回 null。

异常

获取底层类的枚举常量示例

以下示例演示了 java.lang.Class.getEnumConstants() 方法的用法。在这个程序中,我们创建了一个 Class ClassDemo 和一个枚举 Programming。在 main 方法中,我们检索了 Programming 枚举的类,然后使用 getEnumConstants() 方法检索并打印枚举值。

package com.tutorialspoint;

enum Programming {
   java,
   python,
}

public class ClassDemo {

   public static void main(String[] args) {
      Class cls = Programming.class;

      // returns the elements of this enum class
      for(Object obj: cls.getEnumConstants()) {
         System.out.println(obj);
      }
   }
} 

输出

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

java
python

获取 Thread 的枚举常量示例

以下示例演示了 java.lang.Class.getEnumConstants() 方法的用法。在这个程序中,我们创建了一个 Class ClassDemo。在 main 方法中,我们检索了 Thread 的 State 枚举的类,然后使用 getEnumConstants() 方法检索并打印枚举值。

package com.tutorialspoint;

public class ClassDemo {

   public static void main(String[] args) {
      Class cls = Thread.State.class;

      // returns the elements of this enum class
      for(Object obj: cls.getEnumConstants()) {
         System.out.println(obj);
      }
   }
} 

输出

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

NEW
RUNNABLE
BLOCKED
WAITING
TIMED_WAITING
TERMINATED

获取枚举常量为 Null 的示例

以下示例演示了 java.lang.Class.getEnumConstants() 方法的用法。在这个程序中,我们创建了一个 Class ClassDemo。在 main 方法中,我们检索了 ClassDemo 的类,然后使用 getEnumConstants() 方法检索枚举值,并打印相应的提示信息。

package com.tutorialspoint;

public class ClassDemo {

   public static void main(String[] args) {
      Class cls;
      try {
         cls = Class.forName("com.tutorialspoint.ClassDemo");
         Object[] enums = cls.getEnumConstants();

         if(enums != null) {
            System.out.println("Enums are present.");
         }else {
            System.out.println("Enums are not available.");
         }

      } catch (ClassNotFoundException e) {
         e.printStackTrace();
      }
   }
}  

输出

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

Enums are not available.
java_lang_class.htm
广告