枚举是一种特殊的数据类型,之所以特殊是因为它既是一种类(class)类型却又比类型多了些特殊的约束,但是这些约束的存在也造就了枚举类型的简洁,安全性以及便捷性。
创建枚举类型要使用enum关键字,隐含了所创建的类型都是java.lang.enum类的子类(java.lang.enum是一个抽象类)。
枚举类型符合通用模式class enum271447d3c75ca4f8ce424bd25b75b2af>,而e表示枚举类型的名称。 (推荐学习:java课程)
枚举类型的每一个值都映射到protected enum(string name,int ordinal)构造函数中,在这里,每个值的名称都转换成一个字符串,并且序数设置表示了此设置被创建的顺序。
枚举的使用:
创建一个枚举类:enumtest
public enum enumtest { //星期一,星期二,星期三,星期四,星期五,星期六 mon(1), tue(2),wed(3),thu(4),fri(5),sat(6){ public boolean isrest(){ return true; } }, //星期日 sun(0){ public boolean isrest(){ return true; } }; private int value; private enumtest(int value){ this.value=value; } public int getvalue(){ return value; } public boolean isrest(){ return false; }}
使用enumtest枚举类:
public class enummain { public static void main(string[] args) { for (enumtest enumtest : enumtest.values()) { system.out.println(enumtest + ":" + enumtest.getvalue()); } system.out.println("---------------我是分割线------------"); enumtest test = enumtest.sat; switch (test) { case mon: system.out.println("今天是星期一"); break; case tue: system.out.println("今天是星期二"); break; case wed: system.out.println("今天是星期三"); break; case thu: system.out.println("今天是星期四"); break; case fri: system.out.println("今天是星期五"); break; case sat: system.out.println("今天是星期六"); break; case sun: system.out.println("今天是星期日"); break; default: system.out.println(test); break; } }}
以上就是java中的枚举到底是什么鬼的详细内容。