为了间接的表示一些固定的值,JAVA给我们提供了枚举
枚举就是 将变量的值一一列出来,变量的值只限于列举出来的值的范围内
枚举的格式
public enum s {
枚举项1,枚举项2,枚举项3; //注意最后一项后面跟的是分号
}
public enum Season{
SPRING,SUMMER,AUTUMN,WINTER;
}
枚举的特点
1所有的枚举类都是enum的子类
2.我们可以通过 枚举类名.枚举项名 去访问指定的枚举项的
3.每一个枚举项其实就是该枚举的一个对象
4.枚举也是一个类,也可以定义成员变量
5.枚举类的第一行上必须是枚举项,最后一个枚举项的分号可以省略,但是如果枚举类有其他东西,就不能省略,建议不省略
6.枚举类可以有构造器,但是必须是private的,它默认也是private的。
枚举项的用法比较特殊:枚举(“”);
7.枚举类也可以有抽象方法,但是枚举项必须重写该方法
枚举的方法
String name() 获取枚举项的名称
int ordinal() 返回枚举项在枚举类中的索引值
int compareTo(E O)比较两个枚举项,返回的时索引值的差值
String toString() 返回枚举常量的名称
static<T> T valueOf(Class<T> type,String name)
获得指定枚举类中的指定名称的枚举值
Enum.valueOf(Season.class,"SPRING")
values() 获得所有的枚举项