Java 5 出了一个新特性, 就是枚举
通过枚举可以很好的控制集合中对象, 不容易出现多值的逻辑错误,枚举的本质是类
枚举可以有属性, 可以有私有的构造器(可以有参数)
使用示例1:
Grade.java
public Enum Grade { A, B, C, D; } Test.java public class Test { public static void main(String[] args) { Grade grade = getGrade(60); switch(grade) { case Grade.A: System.out.println("Grade is A"); brake; case Grade.B: System.out.println("Grade is B"); brake; case Grade.C: System.out.println("Grade is "C); brake; case Grade.D: System.out.println("Grade is D"); brake; } } private Grade getGrade(int mark) { if (mark > 90) { return Grade.A; } if (mark > 70) { return Grade.B; } if (mark > 60) { return Grade.C; } return Grade.D; } } 枚举与类不同的地方在于枚举是由虚拟机自动实例化的, 枚举有多个示例, 但是一个元素只有一个示例 使用示例2: public class Test { public static void main(String[] args) { Grade good = Grade.B; Grade fail = Grade.D; System.out.println(good == fail); Grade student_1 = Grade.A; Grade student_2 = Grade.A; System.out.println(student_1 == student_2); } } |
输出为:
false
true