在 switch(expr1) 中, expr1 只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是 int 基本类型或 Integer 包装类型,由于, byte、short、char 都可以隐含转换为 int,所以,这些类型以及这些类型的包装类型也是可以的。
显然, long 和 String 类型都不符合 switch 的语法规定,并且不能被隐式转换成 int 类型,所以,它们不能作用于 swtich 语句中。