案例
前端要传过来四个同种类型的值,根据值不同,查询不同的数据,不想在后端代码里直接匹配
"春天".equals(""),改变其硬编码形式
使用场景
枚举类定义
枚举类【带有属性的】
public enum Season1{
//1.提供当前枚举类的对象,多个对象之间用",”隔开,末尾对象用;【必须写在第一个位置】
SPRING("春天", "春暖花开"),
SUMMER("夏天","夏日炎炎"),
AUTUMN("秋天","秋高气爽"),
WINTER("冬天","冰天雪地");
//2.声明Season对象的属性:private final修饰[如果对象没有属性,可以不用定义属性]
private final String seasonName;
private final String seasonDesc;
//2.私有化的构造器,并给对象属性赋值
private Season1(String seasonName, String seasonDesc) {
this.seasonName = seasonName;
this.seasonDesc = seasonDesc;
}
//3.其他诉求,获取枚举类对象属性,final类型的字段不能被set,只有get获取属性值的方法
public String getSeasonName() {
return seasonName;
}
public String getSeasonDesc() {
return seasonDesc;
}
}
main方法
public class SeasonTest1 {
public static void main(String[] args) {
Season1 summer = Season1.SUMMER;
System.out.println(summer); //SUMMER
System.out.println(summer.get); //夏天
System.out.println(summer); //夏日炎炎
}
枚举类【不带属性的】
public enum Season {
SPRING, //春天
SUMMER, //夏天
AUTUMN, //秋天
WINTER; //冬天
}
main方法
public class TestSeason {
public static void main(String[] args) {
Season autumn = Season.AUTUMN;
System.out.println(autumn);
}
}