定义一个枚举类
public enum SeasonEnum {
// 在第一行列出4个枚举实例
SPRING, SUMMER, FALL, WINTER;
}
枚举类常用方法
int compareTo(E o): 该方法用于与指定枚举对象比较顺序
String name(): 返回枚举实例的名称
int ordinal(): 返回枚举值在枚举中的索引值
String toString(): 返回枚举常量的名称
定义一个带有实例变量的枚举类
public enum Gender {
MALE, FEMALE;
// 枚举类通常应该设计成不可变类
// 因此建议枚举的成员变量都是用private final 修饰
private String name;
public void setName(String name) {
switch(this) {
case MALE:
if (name.equals("男")) {
this.name = name;
} else {
return;
}
break;
case FEMALE:
if (name.equals("女")) {
this.name = name;
} else {
return;
}
break;
}
}
public String getName() {
return this.name;
}
}
// 如下代码更改
public enum Gender {
// 此处的枚举值必须调用对应的构造器来创建
MALE("男"), FEMALE("女");
private final String name;
private Gender(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
// 上面的代码实际上等同于如下两行代码
public static final Gender MALE = new Gender("男");
public static final Gender FEMALE = new Gender("女");