下面要给大家讲到的java枚举的内容是枚举类,对于这个方面的知识你了解吗?不大清楚的小伙伴可以通过下文来进行一下学习呢。
java当中,每一个枚举都继承自java.lang.Enum类。
在定义一个枚举类型的时候,每一个枚举类型成员都可以看作是Enum类的实例。
这些枚举成员默认都被final、public, static修饰。
早使用枚举类型成员的时候,直接使用枚举名称调用成员就可以了。
所有枚举实例都可以调用Enum类的方法。
下面是常用方法:
示例:
通过调用枚举类型实例的values( ) 方法可以将枚举的所有成员以数组形式返回,也可以通过该方法获取枚举类型的成员。
创建一个包含3个成员的枚举类型Signal,之后,调用values()方法输出这些成员。
enum Signal { // 定义一个枚举类型 GREEN , YELLOW , RED; } public static void main(String[] args) { for (int i = 0; i < Signal.values() .length; i++) { System.out.println("枚举成员:" + Signal.values()[i]); } }
最终输出结果:
枚举成员:GREEN 枚举成员:YELLOW 枚举成员:RED
示例:
创建一个示例,调用valueOf()方法获取枚举的一个成员,之后,调用compareTo()方法进行比较,并输出结果。
代码:
public class TestEnum { public enum Sex { // 定义一个枚举 male , female; } public static void main(String[] args) { compare(Sex.valueOf("male")); // 比较 } public static void compare(Sex s) { for (int i = 0; i < Sex.values() .length; i++) { System.out.println(s + "与" + Sex.values()[i] + "的比较结果是:" + s.compareTo(Sex.values()[i])); } } }
在上面的代码当中,使用Sex.valueOf("male")取出枚举成员male对应的值,再将该值与其他枚举成员进行比较。
最终输出结果:
male与male的比较结果是:0 male与female的比较结果是:-1
示例:
通过调用枚举类型实例的ordinal()方法,能够获取一个成员在枚举中的索引位置。
创建一个包含3个成员的枚举类型Signal,之后,调用ordinal()方法输出成员及对应索引位置。
实现代码:
public class TestEnum1 { enum Signal { // 定义一个枚举类型 GREEN , YELLOW , RED; } public static void main(String[] args) { for (int i = 0; i < Signal.values() .length; i++) { System.out.println("索引" + Signal.values()[i].ordinal() + ",值:" + Signal.values()[i]); } } }
输出结果:
索引0,值:GREEN 索引1,值:YELLOW 索引2,值:RED
关于这个方面的内容就给你介绍到这里了,更多java基础知识和常见问题,请继续通过奇Q工具网来进行了解和解答吧。
推荐阅读: