【Java】枚举类型

一、 枚举是什么

隐约记得自己大一的时候在 C 语言的课程中学习过枚举 , 但是已经忘光光了 。 那么本文就在 Java 中再学一遍吧 。

枚举是一组常量集合,这些常量具有特定的标识符 。

在 Java 中, 枚举可以是一个数据类型,也可以直接成为枚举类 (对就是把 class 直接换成 enum ), 为了更好的处理枚举类型,还出现了 EnumMapEnumSet

二、为什么要定义枚举类(为什么需要它,它解决什么问题)

一个变量只具有特定的几个值时,将其定义为枚举类型。

通过使用枚举的方式,我们可以通过枚举类型名直接引用常量 。

通过枚举也可以使得 switch 语句的可读性更强 。

说到底,我们选择使用枚举这一类型,就是为了增强我们代码的可读性,可复用性 。 —— 很多东西都是为了这个,不然我们可以什么都不学,就直接用几个凭空出现的常量 (哈哈哈哈)。

三、枚举如何使用 —— 举个

public enum colorEnum {
    RED,
    PINK,
    BLUE,
    BLACK;

    // 不在枚举类型中的返回 UNKNOWN
    public String judge(String s){
        for(int i=0; i<colorEnum.values().length; i++){
            if(s.equals(colorEnum.values()[i])){
                return s;
            }
        }
        return "UNKNOWN";
    }


    public static void main(String[] args) {
        colorEnum colors = colorEnum.BLUE;
        // 枚举类型适合用 switch
        switch (colors) {
            case RED :
                System.out.println(colorEnum.RED);
                break;
            case BLACK:
                System.out.println(colorEnum.BLACK);
                break;
            case BLUE:
                System.out.println(colorEnum.BLUE);
                break;
            default:
                System.out.println("xxx....");
        }

        System.out.println(colors.judge("A"));
    }

}

你可能感兴趣的:(Java,java,jvm,开发语言)