JDK1.7之前switch(expre1)函数中,expre1是一个整数表达式,因此传递给switch和case语句的参数是int、short、char或者byte。
注意,对于精度比int大的类型,比如long、float、double,不会自动转换为int,如果想使用,就必须强转为int,如(int)float。
jdk1.7后,整型,枚举类型,boolean,字符串都可以。jdk1.7并没有新的指令俩处理switch String,而是通过调用switch中的String.hashCode,将String转为int从而进行判断。