Java 中的常量是指程序中不可改變的值,而枚舉類型(enum)是一種特殊的常量類型。枚舉類型是Java 1.5及其以上版本引入的新特性,用于表示一組有限的值。
public enum Season { SPRING, SUMMER, FALL, WINTER; }
上面的代碼定義了一個枚舉類型 Season,其中 SPRING、SUMMER、FALL、WINTER 都是該枚舉類型的常量。與常量一樣,枚舉類型中的值也是不可變的。
使用枚舉類型可以使代碼更加清晰、簡潔,這也是為什么在Java中推薦使用枚舉類型代替常量的主要原因之一。在使用枚舉類型時,可以通過 switch 語句對枚舉類型進行判斷:
Season season = Season.SUMMER; switch(season) { case SPRING: System.out.println("春天"); break; case SUMMER: System.out.println("夏天"); break; case FALL: System.out.println("秋天"); break; case WINTER: System.out.println("冬天"); break; }
除了上述代碼中的 switch 語句,還可以像下面這樣使用枚舉類型:
// 遍歷枚舉類型的所有值 for(Season s : Season.values()) { System.out.println(s); } // 獲取枚舉類型中的某個值 Season s = Season.valueOf("SPRING"); System.out.println(s);
總之,Java 的枚舉類型是一種非常有用的特性,可以用來表示一組有限的值,與常量相比,代碼更加簡潔、清晰。