Привет всем, я пытаюсь получить доступ к значению перечисления, присутствующего во внутреннем классе, как показано ниже, но то, что я получаю, - это не значение, а ключ , Потребность в моем приложении заключается в том, что мне нужно получить доступ к этому значению с помощью рефлексии.Как получить значение enum, присутствующего во внутреннем классе с помощью Reflection
public class Test{
static class TwelveByTwentyFour {
public static enum BET_TYPE_NAME {
Direct12(12),AllOdd(12),AllEven(12), First12(12), Last12(12);
private int value;
BET_TYPE_NAME(int value){
this.value = value;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
}
public static String getBetTypeLength(String gameName,String betType) throws ClassNotFoundException, IllegalArgumentException, SecurityException, IllegalAccessException, NoSuchFieldException{
return Class.forName(Test.class.getCanonicalName()+"$"+gameName+"$"+"BET_TYPE_NAME").getDeclaredField(betType).get(null).toString();
}
public static void main(String[] args) throws IllegalArgumentException, SecurityException, ClassNotFoundException, IllegalAccessException, NoSuchFieldException {
System.out.println(getBetTypeLength("TwelveByTwentyFour", "AllEven"));
}
}
На этом я получаю "AllEven"
в качестве вывода вместо "12"
. Может кто-нибудь, пожалуйста, помогите мне, сказав мне, как я могу получить ценность.