IDEA使用switch传入String编译不通过

今天在使用IDEA的时候,用到switch分支语句,传入String参数的时候一直报错,下面是源码报错截图:

看错误提示并没有提到switch支持String类型,不过ava1.7之后就支持String类型才对呀,于是想到了会不会是JDK问题,但是JDK用的是1.8呀!网上搜索才发现,会不会是编译环境版本过低的原因呢?于是查看对IDEA的ProjectSetting一顿搜索(没办法,对这个还不熟),发现以下画面,原来IDEA默认的编译环境是1.3??!!!WTF!!!修改了下问题就解决了。

补充:以上的修改是针对IDEA所有的project的,以下是针对modules的(Project相当于Eclipse系中的workspace,Module相当于Eclipse系中的Project,一个Project可以包括多个Module)

时间: 2024-08-06 18:41:07

IDEA使用switch传入String编译不通过的相关文章

Java jre7及以上版本中的switch支持String的实现细节

Java7中的switch支持String的实现细节 作者: zsxwing 更新: 2013-03-04 21:08:02 发布: 2012-04-26 13:58:19 在Java7之前,switch只能支持 byte.short.char.int或者其对应的封装类以及Enum类型.在Java7中,呼吁很久的String支持也终于被加上了. 例如,下面是一段switch中使用String的示例代码. 1 public class Test { 2 3 public void test(Str

java中的switch用String作为条件

在开发java程序的过程中,我们遇到了条件判断首选就是switch,但是java中的switch功能不支持字符串作为条件.这时我们该怎么办呢? --使用枚举. 一.枚举简单了解 1.enum是一种数据类型. 特殊:是指在枚举中将变量的值一一列出来,变量的值只限于列举出来的值的范围内. 特殊到一般化:enmu 就是我们根据自己业务需要定义的同"String,int"相同的数据类型.同时enum也就是一种类,可以在enum中定义方法,在使用的时候就按照调用类的方式来调用. 2.定义成枚举的

switch对String的支持

Java 7中,switch的参数可以是String类型了,这对我们来说是一个很方便的改进.到目前为止切换支持这样几种数据类型:byte short int char String.但是,作为一个程序员我们不仅要知道他有多么好用,还要知道它是如何实现的,开关对整型的支持是怎么实现的呢?对字符型是怎么实现的呢?字符串类型呢?有一点的Java开发经验的人这个时候都会猜测切换对串的支持是使用的equals()方法和哈希码()方法.那么到底是不是这两个方法呢?接下来我们就看一下,切换到底是如何实现的.

c++模板元编程五:switch/case语句编译时运行

2.4 switch/case 替代 现在模拟switch/case语句,不过也是在编译期运行.先看调用代码和输出结果 // test case cout << "test case" << endl; Case<2>::Run(); test case case 2 实现代码很简单,还是模板特化 template<int v> class Case { public: static inline void Run() { cout &l

Java Switch(String)

1 package shb.java.test; 2 /** 3 * switch支持字符串 4 * @Package:shb.java.test 5 * @Description: 6 * @author shaobn 7 * @Date 2015-9-9上午8:55:41 8 */ 9 public class test_3 { 10 public static void main(String[] args) { 11 System.out.println(testSwitchStr("j

java7 语法糖 之 switch 声明string

Jdk7新switch 恒语句可以string种类. 例如: @Test public void test_1(){ String string = "hello"; switch (string) { case "hello": System.out.println(string); break; default: throw new IllegalArgumentException("非法參数"); } } 语法糖的背后,其有用的对待stri

android switch(String)错误:Cannot switch on a value of type String for source level below 1.7

switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型只有JDK版本1.7以上才可以支持String 设置如下可解决问题:(若没有JDK1.7版,可下载一下安装)菜单选项-->project->properties->java compiler->compiler compliance level:选1.7即可

mybatis中传入String类型参数的问题

1. 出现的问题 需求是想写一个按公司名字查询公司列表的功能,最开始的代码如下 Dao层接口如下 @MyBatisDao public interface OfficeDao extends TreeDao<Office> { List<Office> findCompanyNameList(String name); } mybatis的xml代码: <select id="findCompanyNameList" parameterType="

volley实现传入string 返回JsonObject

转自 https://blog.csdn.net/lining1041204250/article/details/73322108 在 主界面 RequestQueue mQueue = Volley.newRequestQueue(MainActivity.this); String url = "http://localhost/a/login"; HashMap<String, String> hashMap = new HashMap<String,Stri