给定以下枚举,将Int强制转换为Java中的枚举的正确方法是什么?
public enum MyEnum { EnumValue1, EnumValue2 } MyEnum enumValue = (MyEnum) x; //Doesn't work???
尝试MyEnum.values()[x]在x必须为0or的地方1,即该枚举的有效序数。
MyEnum.values()[x]
x
0
1
请注意,在Java中,枚举实际上是类(因此,枚举值是对象),因此您不能将an int甚至Integer转换为枚举。
int
Integer