在开发的过程中我们经常会定义枚举类,枚举类中获取枚举值的方式也有很多种,下面我们就探究一下大家常用的几种方式:
枚举类
public enum TestEnum {
ONE(1,"one"),
ZERO(0,"zero"),
TWO(2,"two"),
FOUR(4,"four"),
;
TestEnum (int id, String name) {
this.id = id;
this.name = name;
}
private int id;
private String name;
//通过ID获取枚举值
public static TestEnum getById(Integer id) {
if(id == null){
return null;
}
for(TestEnum v : values()) {
if(v.id = id) {
return v;
}
}
return null;
}
}
如果我们想获取其中的一个枚举值的话,可以采用下面的几种方式:
- 通过valueOf方法
public static void main(String[] args) {
TestEnum test = TestEnum.valueOf("ONE");
System.out.println(test);
}
- 通过values方法获取枚举值数组并进行循环获取
public static void main(String[] args) {
for (TestEnum testEnum : TestEnum.values()) {
if (testEnum.name().equals("ZERO")) {
System.out.println(testEnum);
}
}
}