枚举类

枚举类型是一个特殊的类,一般用来表示一组常量,例如一年的四季。枚举类使用关键字 enum 来定义。各个常量通过逗号分隔,最后一个常量后面可以加逗号,也可以不加。

Java 枚举类型的基本用法如下:

enum Season {
    SPRING, SUMMER, AUTUMN, WINTER;
}

上面代码定义了一个枚举类型 Season,它有 4 个常量 SPRINGSUMMERAUTUMNWINTER。枚举类型的常量是静态的,可以通过枚举类型直接访问。

System.out.println(Season.SPRING);  // SPRING
System.out.println(Season.SUMMER);  // SUMMER

比较枚举类型

使用 enum 定义的枚举类型是一种引用类型,而对于引用类型的比较,要使用equals()方法,不能使用====比较的是两个引用类型的引用是否是同一个对象。因此,引用类型的比较要使用equals()方法。但是,对于枚举类型,我们可以直接使用==来比较两个枚举类型的值是否相等。

Season s1 = Season.SPRING;
Season s2 = Season.SPRING;
System.out.println(s1 == s2);  // true

方法

name() 方法

name() 方法返回枚举常量的名称,返回值是一个字符串。

values() 方法

values() 方法返回一个包含所有枚举常量的数组。

valueOf() 方法

valueOf() 方法返回指定名称的枚举常量。

ordinal() 方法

ordinal() 方法返回枚举常量的序号,从 0 开始。

compareTo() 方法

compareTo() 方法用于比较两个枚举常量的顺序。

枚举内部成员

枚举跟普通类一样,可以拥有自己的变量,方法和构造方法。但是,构造方法只能是 private 访问权限。字段建议声明为 final 类型。

最后更新于

这有帮助吗?