我希望在Java中将整数映射到枚举值。这里,整数需要作为键(key),而枚举值是值(value)。所有我看到的示例都是将枚举作为值(value)而整数作为键(key)。我的代码如下:
enum CardStatus {
UNKNOWN, // 0 should map to this
PENDING, // 1 should map to this
ACTIVE // 2 should map to this
public CardStatus getCardStatus(int cardStatus) {
// e.g. cardStatus of 1 would return PENDING
}
}
我怎样才能调用 getCardStatus()
函数并返回一个 CardStatus
枚举值呢?例如,getCardStatus(2)
将返回 ACTIVE
。
return CardStatus.values()[cardStatus];
- Ole V.V.values()
的解决方案。在我看来,这种方法过于脆弱,因为它依赖于值的顺序。如果需要一个新的值,比如关联键为-1的CANCELED,那该怎么办? - Andrew S