Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误与异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java APIs 与框架

Java 类引用

Java 有用资源

Java - 枚举类



介绍

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)

此方法返回具有指定名称的指定枚举类型的枚举常量。

继承的方法

此类继承自以下类的方法:

  • java.lang.Object

示例

以下示例展示了在 ifswitch 语句中使用枚举。

package com.tutorialspoint;

public class EnumDemo {
   public static void main(String args[]) {
      
      //print an Enum
      System.out.println(Mobile.Motorola);

      Mobile mobile = Mobile.Samsung;
      //Usage in IF statment
      if(mobile == Mobile.Samsung) {
         System.out.println("Matched");
      }
      //Usage in Swith statment
      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
广告