switch参数仅支持整数表达式,也可以说是int型,包含int,short,byte,char和枚举(值为int);因为short,byte,char都能自动转换为int型,所以long,String不行,特此强调!
但是!但是在最新的jdk1.7中做了些调整!
jdk1.7中switch支持String了:
String a= "test";
switch (a) {
case "test" :
System.out.println("test");
case "test1" :
System.out.println("test1");
break ;
default :
System.out.println("break");
break ;
} 完全正确
个人认为即使在jdk1.7下也不要用String作为参数,毕竟1.7不普及,会导致兼容问题!