可能重复:
在开关/案例中使用枚举
给定枚举
public enum ExitCodes {
DESPITE_MULTIPLE_ATTEMPTS_CONNECTION_TO_SERVER_FAILED(-1),
PROGRAM_FINISHED_SUCCESSFULLY(0),
// ... more stuff
private final int id;
ExitCodes(final int id) {
this.id = id;
}
public int getValue() {
return id;
}
}
作为另一堂课的一部分,我想
switch (exitCode) {
case ExitCodes.PROGRAM_FINISHED_SUCCESSFULLY.getValue():
// do stuff
失败Constant expression required
为什么是这样?据我了解,分配给 id in 的数值ExitCodes
是 Constant ( final
)
请问这个怎么改?