Java自学-类和对象 枚举类型
枚举类型步骤 1 : 预先定义的常量 枚举enum是一种特殊的类(还是类),使用枚举可以很方便的定义常量 public enum Season { SPRING,SUMMER,AUTUMN,WINTER } 一个常用的场合就是switch语句中,使用枚举来进行判断 注:因为是常量,所以一般都是全大写 public class HelloWorld { public static void main(String[] args) { Season season = Season.SPRING; switch (season) { case SPRING: System.out.println("春天"); break; case SUMMER: System.out.println("夏天"); break; case AUTUMN: System.out.println("秋天"); break; case WINTER: System.out.println("冬天"); break; } } } public enum Season { SPRING,WINTER } 步骤 2 : 使用枚举的好处 假设在使用switch的时候,不是使用枚举,而是使用int,而int的取值范围就不只是1-4,有可能取一个超出1-4之间的值,这样判断结果就似是而非了。(因为只有4个季节) 但是使用枚举,就能把范围死死的限定在这四个当中 而不会出现奇怪的 第5季 public class HelloWorld { public static void main(String[] args) { int season = 5; switch (season) { case 1: System.out.println("春天"); break; case 2: System.out.println("夏天"); break; case 3: System.out.println("秋天"); break; case 4: System.out.println("冬天"); break; } } } 步骤 3 : 遍历枚举 借助增强型for循环,可以很方便的遍历一个枚举都有哪些常量 public class HelloWorld { public static void main(String[] args) { for (Season s : Season.values()) { System.out.println(s); } } } 练习: 枚举 (英雄联盟中有这么一些分类: 再编写一段switch语句,把每种枚举常量输出为中文字符串) 答案: package charactor; public enum HeroType { TANK,WIZARD,ASSASSIN,ASSIST,WARRIOR,RANGED,PUSH,FARMING } . package charactor; public class Hero { public String name; // 姓名 public static void main(String[] args) { HeroType type = HeroType.ASSASSIN; switch (type) { case TANK: System.out.println("坦克"); break; case WIZARD: System.out.println("法师"); break; case ASSASSIN: System.out.println("刺客"); break; case ASSIST: System.out.println("辅助"); break; case WARRIOR: System.out.println("近战"); break; case RANGED: System.out.println("远程战"); break; case PUSH: System.out.println("推进"); break; case FARMING: System.out.println("打野"); break; } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |