更新时间:2022-11-11 13:09:20
以下作品Java6在Eclipse下):
The following works (tested with Java6 under Eclipse):
package com.bob;
public class Test
{
public enum Letters {
A, B, C, D, E
}
public enum Numbers {
ONE, TWO, THREE, FOUR, FIVE
}
public static void main(String [] args) throws Exception
{
System.out.println("Enter in you choice, letters (Letters) or numbers(Numbers)");
String entry = "";
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader reader = new BufferedReader(input);
entry = reader.readLine();
Class<Enum<?>> clazz = (Class<Enum<?>>)Class.forName("com.bob.Test$" + entry);
for (Enum<?> x : clazz.getEnumConstants())
{
System.out.println(x);
}
}
}
请注意枚举的完全限定类名为 com.bob.Test $ Letters
和 com.bob.Test $ Numbers
due成为内部班。错误处理作为一个练习。
Notice that the fully qualified classname of the enums are com.bob.Test$Letters
and com.bob.Test$Numbers
due to being inner classes. Error handling is left as an exercise.