对于下面的枚举,在Java中将Int转换为枚举的正确方式是什么?
public enum MyEnum
{
EnumValue1,
EnumValue2
}
MyEnum enumValue = (MyEnum) x; //Doesn't work???
对于下面的枚举,在Java中将Int转换为枚举的正确方式是什么?
public enum MyEnum
{
EnumValue1,
EnumValue2
}
MyEnum enumValue = (MyEnum) x; //Doesn't work???
try MyEnum.values()[x]
,其中x
必须是0
或1
,即该枚举的有效序号.
请注意,在Java中,枚举实际上是类(因此枚举值是对象),因此不能将int
甚至Integer
强制转换为枚举.