一个实例:
public enum Size{
SMALL, MEDIUM, LARGE, EXTRA_LARGE
}
实际上,这个声明定义的类型是一个类,他刚好有四个实例,在这里,尽量不要构建新的对象
如果需要的话,可以在枚举类中添加一些构造器,方法,域(字段),当然,构造器只有在构造枚举常量的时候被调用
使用枚举类的一些亮点:
在比较两个枚举类型的值时,永远不用使用equals,而是直接使用==就可以了
每一个枚举类都是Enum的子类:
所以可以使用继承自Enum类的很多方法
1.Enum类中的一般方法
可以直接作用在枚举常量上
1.1、toString()
这个方法非常使用,它可以返回枚举常量名,例如:Size.SMALL.toString()将返回字符创"SMALL"
即:将枚举类性的值转为字符串类型
1.2、ordinal()
返回Enum声明中枚举常量的位置,例如:Size.SMALL.ordinal() 返回1
2.静态方法
需要使用Emum.方法名的方式来进行使用
2.1、valueOf() (Enum类中的)
是toString()方法的逆方法,例如。语句:Size size = Enum.valueOf(Size.class, "SMALL");将 size 设置为 Size.SMALL
即:将一个字符串转为枚举类
2.2、values()
每一个枚举类都有一个values()方法,它将返回一个包含全部枚举值的数组,语句:Size[] size = Size.values()
多用于需要遍历枚举的场景
使用实例:
用法:
一、常量
枚举类可以用于定义有多个值情况的常量(即值固定不变)