我已经阅读了很多有关如何使用 java 从其值中获取 enum
的相应名称的信息,但似乎没有任何示例对我有用!怎么了?
public class Extensions {
public enum RelationActiveEnum
{
Invited(0),
Active(1),
Suspended(2);
private final int value;
private RelationActiveEnum(final int value) {
this.value = value;
}
}
}
在另一堂课中我使用:
int dbValue = supp.ACTIVE;
Extensions.RelationActiveEnum enumValue(dbValue);
String stringName = enumValue.toString(); //Visible
// OR
int dbValuee = supp.ACTIVE;
String stringValue = Enum.GetName(typeof(RelationActiveEnum), dbValue);
我应该工作,对吧?但它没有!它告诉我 dbValue cannot be cast to RelationActiveEnum …
原文由 Camilla 发布,翻译遵循 CC BY-SA 4.0 许可协议
由于您的“价值”也恰好与序数匹配,您可以这样做:
并从值中获取枚举:
我想静态方法是放置它的好地方:
显然,如果您的“值”与枚举序数的值不同,这一切都会分崩离析。