鍍金池/ 教程/ Java/ Java Enum類
Java參數(shù)傳遞
Java靜態(tài)內(nèi)部類
Java final關(guān)鍵字
http://www.yiibai.com/java_object_oriented_design/java_inheritan
Java泛型類
Java標(biāo)準(zhǔn)注解
Java接口教程
Java注解
Java枚舉類型
http://www.yiibai.com/java_object_oriented_design/java_class_ins
Java接口實(shí)現(xiàn)
Java哈希編碼
Java泛型約束
http://www.yiibai.com/java_object_oriented_design/java_import.ht
Java注解默認(rèn)值
Java異常拋出
Java不可變對(duì)象
Java類基礎(chǔ)
Java接口繼承
Java類方法
Java訪問(wèn)級(jí)別
Java對(duì)象克隆
Java初始化塊
Java可變長(zhǎng)度參數(shù)
Java接口字段
Java對(duì)象相等比較(Equals)
Java實(shí)例和靜態(tài)方法
Java繼承方法隱藏(覆蓋)
Java面向?qū)ο笤O(shè)計(jì)
Java對(duì)象finalize()方法
Java抽象類和方法
Java Object類
Java泛型方法和構(gòu)造函數(shù)
Java枚舉體
Java接口方法
Java this關(guān)鍵字
Java注解類型的限制
Java main()方法
Java Enum類
Java注解用法
Java枚舉比較
Java注解類型
Java內(nèi)部類成員
Java繼承和構(gòu)造函數(shù)
Java類實(shí)例化
Java內(nèi)部類類型
Java對(duì)象toString()方法
Java finally塊
Java繼承教程
Java自定義異常
Java枚舉值
Java接口作為類型
Java異常類
Java方法覆蓋教程
http://www.yiibai.com/java_object_oriented_design/java_class_bas
Java枚舉方法
Java方法重載
http://www.yiibai.com/java_object_oriented_design/java_interface
Java異常用法
Java內(nèi)部類
Java類成員訪問(wèn)級(jí)別
Java異常處理教程
Java注解反射
Java構(gòu)造函數(shù)(構(gòu)造器)
Java導(dǎo)入(import語(yǔ)句的用法)

Java Enum類

枚舉類型的超類

編譯枚舉類型時(shí),編譯器會(huì)創(chuàng)建一個(gè)類。枚舉類型具有構(gòu)造函數(shù),字段和方法。 枚舉類型僅在編譯器生成的代碼中實(shí)例化。

每個(gè)枚舉類型都隱式地?cái)U(kuò)展java.lang.Enum類。 Enum類中定義的所有方法都可以與所有枚舉類型一起使用。

Enum類

下表列出了在Enum類中定義的方法。

方法名稱 方法描述
public final String name() 返回枚舉常量的名稱
public final int ordinal() 返回枚舉常量的順序值
public final boolean equals(Object other) 如果指定的對(duì)象等于枚舉常量,則返回true。 否則,它返回false。當(dāng)它們用于兩個(gè)枚舉常量,==運(yùn)算符和equals()方法返回相同的結(jié)果。
public final int hashCode() 返回枚舉常量的哈希碼值。
public final int compareTo(E o) 將此枚舉常量與指定的枚舉常量進(jìn)行比較。 它返回此枚舉常量和指定枚舉常量的序數(shù)值的差異。
public final Class getDeclaringClass() 返回聲明枚舉常量的類的對(duì)象。
public String toString() 默認(rèn)情況下,它返回枚舉常量的名稱,與name()方法相同。
public static valueOf(Class enumType, String name) 返回指定的枚舉類型和名稱的枚舉常量。

示例

Level  lowLevel = Enum.valueOf(Level.class, "LOW")

以下代碼顯示了如何比較兩個(gè)枚舉常量:

enum Level {
  LOW, MEDIUM, HIGH, URGENT;
}

public class Main {
  public static void main(String[] args) {
    Level s1 = Level.LOW;
    Level s2 = Level.HIGH;

    // s1.compareTo(s2) returns s1.ordinal() - s2.ordinal()
    int diff = s1.compareTo(s2);
    if (diff > 0) {
      System.out.println(s1 + "  occurs after  " + s2);
    } else {
      System.out.println(s1 + "  occurs before " + s2);
    }

  }
}

上面的代碼生成以下結(jié)果。

LOW  occurs before HIGH

上一篇:Java接口方法下一篇:Java Object類