将枚举的值转换成枚举
public enum TestEnum {
TEST1(1),
TEST2(2),
TEST3(3),
TEST4(4),
TEST5(5);
private int type;
private TestEnum (int type) {
this.type = type;
}
public int getType() {
return this.type;
}
public static TestEnum of(int typeValue) {
TestEnum [] var1;
int var2 = (var1 = values()).length;
for(int var3 = 0; var3 < var2; ++var3) {
TestEnum type;
//字符串对应的改成equals
if ((type = var1[var3]).getType() == typeValue) {
return type;
}
}
return null;
}
调用
TestEnum test = TestEnum .of(1))
如果字段名即值,如:
public enum TestEnum2 {
TEST21("TEST21"),
TEST22("TEST22"),
TEST23("TEST23"),
TEST24("TEST24");
private String type;
private TestEnum2(String type){
this.type = type;
}
public String getType(){
return type;
}
}
可以使用获取
TestEnum2 test = Enum.valueOf(TestEnum2.class,"TEST21");//需要try{}catch()
也可以根据name获取第一种的值
Enum.valueOf(TestEnum.class,"TEST1").getType();// 1
还没有评论,来说两句吧...