在Java的流程控制语句中的switch语句,他所支持的参数类型有三类:
1、基本数据类型:byte、short、char、int
2、引用数据类型:Byte、Short、Character、Integer、String
3、特殊类型:枚举
其实,switch只支持int类型!
byte、short、char可以自动转换为int,所以也可以作为参数,而这四种基本数据类型所对应的封装类,通过自动拆箱机制,也可以作为参数。
Java5开始枚举也可以作为参数,底层是使用了枚举类的ordinal方法,返回的是枚举常量的序号,是int类型。
Java7开始String也可以作为参数,底层使用了hashCode方法,返回的是哈希码,也是int类型