代码:
package com.yql.test.enumtest;
public enum SeckillStateEnum {
SUCCESS(1, "秒杀成功"), END(0, "秒杀结束"), REPEAT_KILL(-1, "重发秒杀"), INNER_ERROR(-2, "系统异常"), DATA_REWRITE(-3, "数据篡改");
private int state;
private String stateInfo;
private SeckillStateEnum(int state, String stateInfo) {
this.state = state;
this.stateInfo = stateInfo;
}
public static SeckillStateEnum getStateInfo(int index) {
for (SeckillStateEnum state : values()) {
if (state.getState() == index) {
return state;
}
}
return null;
}
public int getState() {
return state;
}
public String getStateInfo() {
return stateInfo;
}
}
测试代码:
package com.yql.test.enumtest;
public class SeckillStateEnumTest {
public static void main(String[] args) {
System.out.println(SeckillStateEnum.getStateInfo(1));
System.out.println(SeckillStateEnum.getStateInfo(1).getStateInfo());
System.out.println(SeckillStateEnum.SUCCESS);
System.out.println(SeckillStateEnum.SUCCESS.getState());
System.out.println(SeckillStateEnum.SUCCESS.getStateInfo());
}
}
结果:
SUCCESS
秒杀成功
SUCCESS
1
秒杀成功