Java switch 语句如何使用 String 参数
问题
当我尝试在switch语句使用String参数时(注意ctrType为字符串)
switch(ctrType){ case"01": exceptionType="读FC参数数据"; break; case"03": exceptionType="读FC保存的当前表计数据"; break; default: exceptionType="未知控制码:"+ctrType; }
提示如下错误:
CannotswitchonavalueoftypeStringforsourcelevelbelow1.7.Onlyconvertibleintvaluesorenumvariablesarepermitted
意思是说,我的jre本版本太低,不支持。据查在Java7之前,switch只能支持byte、short、char、int或者其对应的封装类以及Enum类型。在Java7中,String支持也终于被加上了。
解决
普通项目
安装JDK1.7+,在项目中更改配置引入该JDK版本依赖库。
Maven项目
更改pom.xml文件,设置maven-compiler-plugin插件目标版本为1.7+,例如
... ... org.apache.maven.plugins maven-compiler-plugin 3.2 1.7
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。