Java 枚舉--枚舉的作用
枚舉就是規定好了指定的取值範圍,所有的內容隻能從指定的範圍中取得。使用簡單類完成顏色的固定取值問題。也就是說此時,一個類隻能產生固定的幾個對象。
class Color{ public static final Color RED = new Color("紅色") ; // 定義第一個對象 public static final Color GREEN = new Color("綠色") ; // 定義第一個對象 public static final Color BLUE = new Color("藍色") ; // 定義第一個對象 private String name ; private Color(String name){ this.name = name ; } public void setName(String name){ this.name = name ; } public String getName(){ return this.name ; } public static Color getInstance(int i){ switch(i){ case 1:{ return RED ; } case 2:{ return GREEN ; } case 3:{ return BLUE ; }default:{ return null ; } } } }; public class ColorDemo01{ public static void main(String args[]){ Color c1 = Color.RED ; // 取得紅色 System.out.println(c1.getName()) ; // 輸出名字 Color c2 = Color.getInstance(3) ; // 根據編號取得名字 System.out.println(c2.getName()) ; } };此時,程序限定了所能取的對象的範圍,所以達到了枚舉的功能。
定義一個枚舉類型

使用enum關鍵字定義:
public enum Color{ RED,GREEN,BLUE ; // 定義三個枚舉的類型 };枚舉中有三個取值。
以後在取得的時候,隻能從這三個內容取
public class GetEnumContent{ public static void main(String args[]){ Color c = Color.BLUE ; // 取出藍色 System.out.println(c) ; } };因為枚舉已經指定好了範圍,所以可以使用foreach進行全部的輸出,使用“枚舉.values()”的形式取得全部的枚舉內容。
public class PrintEnum{ public static void main(String args[]){ for(Color c:Color.values()){ // 輸出枚舉中的全部內容 System.out.println(c) ; } } };還可以直接將內容在SWITCH語句上使用。
public class SwitchPrintEnum{ public static void main(String args[]){ for(Color c:Color.values()){ // 輸出枚舉中的全部內容 print(c) ; } } public static void print(Color color){ switch(color){ case RED:{ System.out.println("紅顏色") ; break ; } case GREEN:{ System.out.println("綠顏色") ; break ; } case BLUE:{ System.out.println("藍顏色") ; break ; } default:{ System.out.println("未知顏色") ; break ; } } } };
最後更新:2017-04-03 12:53:43