Java 中的枚举

java programming java8object oriented programming

java.lang.Enum 类是所有 Java 语言枚举类型的公共基类。

类声明

以下是 java.lang.Enum 类 −

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

类构造函数

Sr.No.构造函数 &描述
1protected Enum(String name, int ordinal)
这是单个构造函数。

类方法

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

继承的方法

此类从以下类继承了方法 −

  • java.lang.Object

示例

让我们看一个例子。

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

      Mobile mobile = Mobile.Samsung;
      //在 IF 语句中的用法
      if(mobile == Mobile.Samsung) {
         System.out.println("Matched");
      }
      //在 Swith 语句中的用法
      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

相关文章