所有的枚举类型都是Enum类的子类;
鉴于简化考虑,Enum类省略了一个类型参数;
例子:
public enum Size{SMALL, MEDIUM, LARGE, EXTRA_LARGE}
实际上,应将枚举类型Size扩展为Enum<Size>;
这个声明定义的类型是一个类,它有四个实例,在此尽量不要构造新对象;
在比较两个枚举类型的值时,永远不需要调用equals,而直接使用”==“就可以了。
1、toString():这个方法能够返回枚举常量名;
例如:Size.SMALL.toString()将返回字符串”SMALL“;
2、valueOf静态方法是toString的逆方法;
Size s = (Size)Enum.valueOf(Size.class, "SMALL"); // 将s设置成Size.SMALL。
每个枚举类型都有一个静态的values方法,它将返回一个包含全部枚举值的数组;
例如:Size[] values = Size.values(); // 数组中包含枚举类中的所有元素。
3、ordinal方法:这个方法返回enum声明中枚举常量的位置,位置从0开始计数;
例如:Size.MEDIUM.ordinal()返回1。 |
|