switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String上?
答:switch(exp),exp可以是int,byte,short,char,enum类型,在jdk1.7(包括1.7)之后可以支持String类型
class="java">package com.n5; public class Demo { public static void main(String[] args) { int i = 1; byte bt = 1; short s = 1; char c = 'a'; long l = 1; String str = "a"; Mood mood = Mood.HAPPY; switch (i) { case 1: System.out.println("ok"); break; default: break; } switch (bt) { case 1: System.out.println("ok"); break; default: break; } switch (s) { case 1: System.out.println("ok"); break; default: break; } switch (c) { case 'a': System.out.println("ok"); break; default: break; } switch (mood) { case LOSE: break; case HAPPY: System.out.println("ok"); break; default: break; } // switch (l) { // case 1: // System.out.println("ok"); // break; // default: // break; // } // switch (str) { // case "a": // System.out.println("ok"); // break; // default: // break; // } // ps:在jdk1.7之后支持String } } enum Mood { HAPPY, LOSE }
?输出结果:
ok ok ok ok ok
?附件:
?
?
?