switch-case参数类型

switch语句用法:

  0. switch语句由一个控制表达式和多个case标签组成

  1. switch控制表达式支持的类型有byte、short、char、int、enum(JDK5)、String(JDK7)

  2. switch-case语句完全可以与if-else语句互转,但通常来说,switch-case语句执行效率要高

  3. default语句在当前switch找不到匹配的case时执行,default并不是必须的

  4. 一旦case匹配,就会顺序执行后面的程序代码,直到遇见break(根据这一特点,可以写一些巧妙的代码)

看下面的示例:

 public class SwitchTest {

     public static void main(String[] args) {
// TODO Auto-generated method stub
switchTest((byte)1);
switchTest((short)2);
switchTest(3);
switchTest('4');
switchTest("5");
switchTest(Gender.MAN);
} public static void switchTest(int var) {
switch (var) {
case 3:
System.out.println(var);
break;
}
} /*public static void switchTest(boolean var) {
switch (var) {
case true:
System.out.println(var);
break;
}
}*/ public static void switchTest(short var) {
switch (var) {
case 2:
System.out.println(var);
break;
}
} public static void switchTest(byte var) {
switch (var) {
case 1:
System.out.println(var);
break;
}
} /*public static void switchTest(long var) {
switch (var) {
case 1:
System.out.println(var);
break;
}
}*/ public static void switchTest(String var) {
switch (var) {
case "5":
System.out.println(var);
break;
}
} public static void switchTest(char var) {
switch (var) {
case '4':
System.out.println(var);
break;
}
} public static void switchTest(Gender var) {
switch (var) {
case MAN:
System.out.println(var);
break;
default:
System.out.println("error");
break;
}
}
} enum Gender{
MAN, WOMAN
}

switch的参数类型:

  在JDK6以前,switch仅支持能够等价为int的类型(byte、short、int、char)和枚举类型

  在JDK7中加入了String

  但long、float、double、boolean等不支持

上一篇:LabVIEW 吸星大法 - 看见的好东西都是我的(上篇)


下一篇:Codeforces Good Bye 2016 E. New Year and Old Subsequence