java枚舉enumeration
/**
* 測(cè)試枚舉enum
*/
enum EnumSeason {
? ?//enum默認(rèn)extends java.lang.Enum ?本質(zhì)也是類
? ?SPRING,SUMMER,AUTUMN,WINTER
? ?//在枚舉內(nèi)創(chuàng)建常量 用,隔開 不賦值
}
enum EnumWeek{
? ?MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY
? ?//每個(gè)成員默認(rèn)public static final修飾 常量
}
class TestEnum{
? ?public static void main(String[] args) {
? ? ? ?System.out.println(EnumSeason.SPRING);
? ? ? ?//通過枚舉名. 直接調(diào)用 結(jié)果為SPRING
? ? ? ?System.out.println(Arrays.toString(EnumSeason.values()));
? ? ? ?//枚舉名.values()返回常量數(shù)組 數(shù)組的類型是Season[] 每一個(gè)元素都是Season的實(shí)例 結(jié)果[SPRING, SUMMER, AUTUMN, WINTER]
? ? ? ?for (int i = 0; i< EnumSeason.values().length; i++){
? ? ? ? ? ?System.out.println(EnumSeason.values()[i]);
? ? ? ?}
? ? ? ?for (EnumSeason s: EnumSeason.values()){
? ? ? ? ? ?//for-each要輸入對(duì)應(yīng)的類型 ?.values()返回的是 Season[]數(shù)組 所以引用變量s也要用Season
? ? ? ? ? ?System.out.println(s);
? ? ? ? ? ?//常量本身不是字符串 enum重寫了.toString 讓常量打印自己的名字
? ? ? ?}
? ? ? ?int dayOfWeek = new Random().nextInt(EnumWeek.values().length);
? ? ? ?switch (EnumWeek.values()[dayOfWeek]){
? ? ? ? ? ?case MONDAY:
? ? ? ? ? ? ? ?//不可以寫EnumWeek.MONDAY
? ? ? ? ? ? ? ?System.out.println(1);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case TUESDAY:
? ? ? ? ? ? ? ?System.out.println(2);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case WEDNESDAY:
? ? ? ? ? ? ? ?System.out.println(3);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case THURSDAY:
? ? ? ? ? ? ? ?System.out.println(4);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case FRIDAY:
? ? ? ? ? ? ? ?System.out.println(5);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case SATURDAY:
? ? ? ? ? ? ? ?System.out.println(6);
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?case SUNDAY:
? ? ? ? ? ? ? ?System.out.println(7);
? ? ? ? ? ? ? ?break;
? ? ? ?}
? ?}
}
java枚舉enumeration的評(píng)論 (共 條)
