枚举类型(可根据name值取code,也可根据code去name)
public enum SchoolType {
YOUERYUAN("幼儿园",1),
XIAOXUE("小学",2),
CHUZHONG("初中",3),
GAOZHONG("高中",4),
DAXUE("大学",5),
TESHU("特殊学校",6);
private Integer code;
private String name;
private SchoolType(String name,Integer code){
this.name=name;
this.code=code;
}
//根据code获取对应的name
public static String getName(Integer code){
SchoolType[] values = values();
for(SchoolType type:values){
if(type.code.equals(code)){
return type.name;
}
}
return null;
}
//根据name获取对应的code
public static Integer getCode(String name){
SchoolType[] values = values();
for(SchoolType type:values){
if(type.name.equals(name)){
return type.code;
}
}
return null;
}
public static List<Integer> getAllCode(){
SchoolType[] values = values();
List<Integer> codes = new ArrayList<>();
for (SchoolType type:values) {
codes.add(type.code);
}
return codes;
}
}