1.基礎枚舉定義與使用:?
package com.zxy;public class Main {public static void main(String[] args) {
// 獲取枚舉值cars car = cars.BMW;switch (car){case BMW :System.out.println("BMW");break;case BENZ :System.out.println("BENZ");break;case AUDI :System.out.println("AUDI");break;}
// 增強for循環遍歷枚舉for(cars cars:cars.values()){System.out.println(cars);}}
}
enum cars{BMW, BENZ, AUDI;
}
輸出:
紅色
所有顏色:
RED
GREEN
BLUE
2.帶屬性和方法的枚舉?
package com.zxy;public class Main2 {public static void main(String[] args) {Status status = Status.UnReady;System.out.println(status);System.out.println("狀態碼:"+status.getNum());System.out.println("狀態:"+status.getStatusName());// values()返回枚舉名數組Status[] values = Status.values();for (Status status1 : values) {System.out.println(status1);}
// valueOf()返回枚舉名Status status2 = Status.valueOf("UnReady");System.out.println(status2);}
}enum Status {UnReady(0, "未準備"),Ready(1, "已準備"),Start(2, "已啟動");private final Integer Num;private final String statusName;public Integer getNum() {return Num;}public String getStatusName() {return statusName;}Status(int Num, String statusName) {this.Num = Num;this.statusName = statusName;}
}
UnReady
狀態碼:0
狀態:未準備
UnReady
Ready
Start
UnReady
總結:
- values 返回枚舉值數組
- valueOf(String name) 返回枚舉值
- 枚舉類構造方法 默認private
- 枚舉類屬性 final修飾