在Java中,枚舉(Enumeration)是一種特殊的類,用于表示一組固定的常量值。枚舉類型的定義和使用如下:
使用關鍵字enum
來定義枚舉類型,后跟枚舉類型的名稱。在枚舉類型中,可以定義一些實例變量和構造方法。例如,定義一個表示顏色的枚舉類型:
public enum Color {
RED, GREEN, BLUE, YELLOW;
}
枚舉類型的實例可以通過其名稱直接訪問。例如,獲取顏色枚舉中的紅色實例:
Color color = Color.RED;
可以在枚舉類型中定義實例方法,這些方法可以在枚舉實例上調用。例如,為顏色枚舉定義一個方法,用于返回顏色的英文名稱:
public enum Color {
RED, GREEN, BLUE, YELLOW;
public String getEnglishName() {
switch (this) {
case RED:
return "Red";
case GREEN:
return "Green";
case BLUE:
return "Blue";
case YELLOW:
return "Yellow";
default:
return "";
}
}
}
枚舉類型默認有一個構造方法,該構造方法接受一個整數參數,用于表示枚舉實例在枚舉常量列表中的位置。如果需要自定義枚舉構造方法,可以在枚舉類型中定義一個或多個構造方法。例如,為顏色枚舉定義一個帶名稱的構造方法:
public enum Color {
RED("Red"), GREEN("Green"), BLUE("Blue"), YELLOW("Yellow");
private String name;
private Color(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
這樣,就可以通過名稱創建顏色枚舉實例,并獲取其英文名稱:
Color color = Color.valueOf("RED");
System.out.println(color.getEnglishName()); // 輸出 "Red"