jdk 1.7 之前,switch 只支持 int 、short、byte、char 类型,其实 switch 只支持 int 类型,但是 short 、 byte 、char 可以自动转化到 int 。精度小的向精度大的转化。
jdk 1.7 之后,switch 便可以支持 String、枚举类型、Boolean 类型,其实 jdk 1.7 没有没有新的指令处理 switch String,而是调用了switch 中String.hashcode 方法,将 String 转化为 int 。
jdk 1.7 之前,switch 只支持 int 、short、byte、char 类型,其实 switch 只支持 int 类型,但是 short 、 byte 、char 可以自动转化到 int 。精度小的向精度大的转化。
jdk 1.7 之后,switch 便可以支持 String、枚举类型、Boolean 类型,其实 jdk 1.7 没有没有新的指令处理 switch String,而是调用了switch 中String.hashcode 方法,将 String 转化为 int 。
转载于:https://my.oschina.net/u/3973793/blog/3096439