Java 枚舉是一個(gè)特殊的類敛惊,一般表示一組常量膊毁,比如一年的 4 個(gè)季節(jié)胀莹,一個(gè)年的 12 個(gè)月份,一個(gè)星期的 7 天婚温,方向有東南西北等描焰。
Java 枚舉類使用 enum 關(guān)鍵字來定義,各個(gè)常量使用逗號(hào) , 來分割栅螟。
例如定義一個(gè)顏色的枚舉類荆秦。
enum Color
{
? ? RED, GREEN, BLUE;
}
以上枚舉類 Color 顏色常量有 RED, GREEN, BLUE,分別表示紅色力图,綠色步绸,藍(lán)色。
使用實(shí)例:
實(shí)例
enum Color
{
? ? RED, GREEN, BLUE;
}
public class Test
{
? ? // 執(zhí)行輸出結(jié)果
? ? public static void main(String[] args)
? ? {
? ? ? ? Color c1 = Color.RED;
? ? ? ? System.out.println(c1);
? ? }
}
執(zhí)行以上代碼輸出結(jié)果為:
RED
內(nèi)部類中使用枚舉
枚舉類也可以聲明在內(nèi)部類中:
實(shí)例
public class Test
{
? ? enum Color
? ? {
? ? ? ? RED, GREEN, BLUE;
? ? }
? ? // 執(zhí)行輸出結(jié)果
? ? public static void main(String[] args)
? ? {
? ? ? ? Color c1 = Color.RED;
? ? ? ? System.out.println(c1);
? ? }
}
執(zhí)行以上代碼輸出結(jié)果為:
RED
每個(gè)枚舉都是通過 Class 在內(nèi)部實(shí)現(xiàn)的吃媒,且所有的枚舉值都是 public static final 的瓤介。
以上的枚舉類 Color 轉(zhuǎn)化在內(nèi)部類實(shí)現(xiàn):
class Color
{
? ? public static final Color RED = new Color();
? ? public static final Color BLUE = new Color();
? ? public static final Color GREEN = new Color();
}