首页 > 代码库 > Switch能否用string做参数?

Switch能否用string做参数?

  由于小编自己的编译环境jdk用的是比较高,在命令窗口输入java -version即可看到。(打开命令窗口win+R,输入cmd,回车)

  java version "1.8.0_111"
  Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
  Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

  String类型一直可以当做Switch的参数,编译和运行都没有出错。一次在资深程序大神的博客看到的,在jdk1.7之前,Switch的参数类型在 Java 7之前,switch 只能支持            byte、short、char、int或者其对应的封装类以及 Enum 类型。在 Java 7中,String支持被加上了。

  

  试了一下,如在jdk 1.7 之前的版本使用, 会提示如下错误:

  Cannot switch on a value of type String for source level below 1.7. Only convertible int values or enum variables are permitted

  意为jdk版本太低,不支持。

  如有什么不对或者疑问,欢迎提意见!!!

Switch能否用string做参数?