java枚举 enum
一、介绍
二、用法举例:
public enum DateTypeEnums {
DAY(0,'天'),
MONTH(1,"月"),
WEEK(2,"周");
public final int code;
public final String message;
DateTypeEnums(int code, String message ) {
this.code = code;
this.message = message;
}
public int getCode() {
return this.code;
}
public String getMessage() {
return message;
}
}
三、枚举在switch中的写法:
错误写法:
ResultStructureEnum type = ResultStructureEnum.valueOf(userType);
switch (type) {
case ResultStructureEnum.STUDENT:
...
break;
case ResultStructureEnum.TEACHER:
...
break;
case ResultStructureEnum.PARENT:
...
break;
...
}
# 这样编译不会通过,提示case后必须是一个常量
正确写法:
ResultStructureEnum type = ResultStructureEnum.valueOf(userType);
switch (type) {
case STUDENT:
...
break;
case TEACHER:
...
break;
case PARENT:
...
break;
...
}
# 即在 case 后面可以直接写枚举类型,不用加枚举类的类名。
如果需要根据类型的编码返回枚举实例,可以在枚举类中加入方法:
/**
* 根据编号获取对应枚举实例
*
* @param statNo
* @return
*/
public static DateTypeEnums getEnum(intcode) {
for (DateTypeEnums result : DateTypeEnums.values()) {
if (result.getCode == code) {
return result;
}
}
return null;
}
还没有评论,来说两句吧...