Java 枚举类

Java Enum 类是所有枚举类型的公共基类。它是一个特殊的类,包含一组在编译时本身已知的预定义常量值。

Java Enum 类声明

以下是 java.lang.Enum 类的声明

public abstract class Enum<E extends Enum<E>>
   extends Object
      implements Comparable<E>, Serializable 

Java Enum 类构造函数

序号方法和描述
1.protected Object clone()
此方法会 抛出 CloneNotSupportedException异常。
2.int CompareTo(E o)
将此枚举与指定对象进行比较以获得顺序。
3.boolean equals(Object other)
如果指定的对象等于此枚举常量,则返回 true。
4.protected void Finalize()
枚举类不能有 Finalize 方法。
5.Class<E> getDeclaringClass()
返回与该枚举常量的枚举类型对应的 Class 对象。
6.int hashCode()
返回此枚举常量的哈希码。
7.String name()
返回此枚举常量的名称,与其枚举声明中所声明的完全相同。
8.int ordinal()
返回此枚举常量的序数(其在枚举声明中的位置,其中初始常量被分配零序数)。
9.String toString()
返回声明中包含的枚举常量的名称。
10.static <T extends Enum<T>> T valueOf(Class<T> enumType, String name)
返回具有指定名称的指定枚举类型的枚举常量。

继承的方法

此类继承以下类的方法 -

  • java.lang.Object

Java Enum 类示例

以下示例展示了enum 的用法 if语句 switch 语句。

package com.yxjc123;
public class EnumDemo {
   public static void main(String args[]) {
      
      //打印枚举
      System.out.println(Mobile.Motorola);

      Mobile mobile = Mobile.Samsung;
      //IF语句中的用法
      if(mobile == Mobile.Samsung) {
         System.out.println("Matched");
      }
      //Switch语句中的用法
      switch(mobile) {
         case Samsung:
            System.out.println("Samsung");
            break;
         case Nokia:
            System.out.println("Nokia");
            break;
         case Motorola:
            System.out.println("Motorola");
      }
   }
}
enum Mobile {
   Samsung,
   Nokia,
   Motorola
} 

输出

让我们编译并运行上面的程序,这将产生以下结果 -

Motorola
Matched
Samsung