首页 > 技术文章 > 枚举

tangdeqiang 2017-10-18 18:20 原文

   以前在设置常量通常是将常量放在接口中,这样可以在程序中直接使用,并且该常量不能被修改,因为在接口中定义常量时,该常量的修饰符为final和static。

     将常量放在枚举类中可以达到其他值不能传入的效果,比如在一个打开门的方法中只能是妻子和丈夫进出,如果不使用枚举类定义,那这个门可以任意进出任何人,但是在枚举类中定义了妻子和丈夫两个变量,那在打开门就只能是丈夫和妻子,如果是其他人,程序就会报错。这就是枚举类的作用。

       如果不使用枚举类,也可以使用定义上面常量的方法来达到效果,但是这种方法不能达到灵活的效果,因为不能改变其值,并且在程序运行时可能会出错。定义枚举类还可以举一个例子,比如一个车子在运行的时候,定义一个车子运行的方向的方法,如上下左右,在枚举类中就定义这四个变量,在方法调用的时候就会只能是这四个方向,如果车子运行不是这四个方向,程序就会报错,但如果不使用枚举类,其方向会很多,不能保证运行的方向就是这四个方向。所以这就是枚举类的最简单的直白。枚举类举例如下:

public class TestEnum {
    public enum MyColor { red, green, blue };
    public enum MyDoorOpener {me, mywife};
    
    public static void main(String[] args) {
        MyColor m = MyColor.red;
        switch(m) {
            case red:
                System.out.println("red");
                break;
            case green:
                System.out.println("green");
                break;
            default:
                System.out.println("default");
        }
        System.out.println(m);
    }
}

 

推荐阅读