Java 枚举(Enum)类是所有 Java 语言枚举类型的通用基类。
类声明
下面是 java.lang.Enum
类的声明:
public abstract class Enum<E extends Enum<E>>
extends Object
implements Comparable<E>, Serializable
类构造器
序号 |
构造器 |
描述 |
1 |
protected Enum(String name, int ordinal) |
这是唯一的构造器。 |
类方法
序号 |
方法 |
描述 |
1 |
int compareTo(E o) |
此方法根据顺序比较此枚举与指定对象。 |
2 |
boolean equals(Object other) |
如果指定对象等于此枚举常量,则此方法返回 true 。 |
3 |
Class<E> getDeclaringClass() |
此方法返回与此枚举常量对应的枚举类型的 Class 对象。 |
4 |
int hashCode() |
此方法返回此枚举常量的哈希码。 |
5 |
String name() |
此方法返回此枚举常量的名称,正好与其在枚举声明中声明的一致。 |
6 |
int ordinal() |
此方法返回此枚举常量的序数(其在枚举声明中的位置,初始常量被分配序数零)。 |
7 |
String toString() |
此方法返回此枚举常量的名称,如声明中所包含的。 |
8 |
static <T extends Enum<T>> T valueOf(Class<T> enumType, String name) |
此方法返回具有指定名称的指定枚举类型的枚举常量。 |
继承的方法
此类继承自以下类的方法:
示例
下面的例子展示了枚举在 if
和 switch
语句中的用法。
package com.tutorialspoint;
public class EnumDemo {
public static void main(String args[]) {
System.out.println(Mobile.Motorola);
Mobile mobile = Mobile.Samsung;
if (mobile == Mobile.Samsung) {
System.out.println("匹配");
}
switch (mobile) {
case Samsung:
System.out.println("三星");
break;
case Nokia:
System.out.println("诺基亚");
break;
case Motorola:
System.out.println("摩托罗拉");
break;
}
}
}
enum Mobile {
Samsung,
Nokia,
Motorola
}
输出
编译并运行上述程序会产生以下结果:
摩托罗拉
匹配
三星