繁体   English   中英

不能在Java 1.8和Eclipse中切换大小写?

[英]switch-case in Java 1.8 with Eclipse not possible?

我已经重新安装了Java 8,并获得了一个全新的Eclipse版本。

如果我编写以下代码:

String a = "001100";

switch(a) {
   case "5": a = "25"; break;
   default: System.exit(0);
}

然后Eclipse在开关括号中的红色下划线“ a”,并说“将项目合规性和JRE更改为1.7”。 我没有尝试过此操作,因为我正在使用Java 1.8,这应该可以工作吗? 我不想使用Java 1.7。

我的Eclipse正在使用Java 1.8(也是该项目)进行设置。 设置中没有更低的Java版本。

问题出在哪儿?

在此处输入图片说明

根据此答案 ,自JDK7起就实现了字符串切换,因此应切换到1.7兼容性。 据我了解,这不是“切换回”您的Java版本,而是使您能够使用这些1.7功能。

问题很可能是您的语言级别设置为低于Java 1.7。 它与项目使用的JRE版本不同。 尝试在项目设置中找到语言级别,并将其设置为Java或Java 7,以使String上的此开关起作用

您的Eclipse使用的Java SDK版本低于1.7。 在Eclipse中检查您的Java编译器级别:

Windows>首选项> Java>编译器>编译器合规性级别

您必须为Eclipse设置默认的JDK版本,以使所有项目都在默认的JDK版本eclipse中创建。

要知道如何在Eclipse中设置默认的JDK版本, 请单击此处

switch语句中的字符串仅在JDK 1.7之后可用

https://docs.oracle.com/javase/7/docs/technotes/guides/language/strings-switch.html

您需要检查Java编译器级别并将其更改为JDK 1.8或1.7。

(右键单击项目,转到首选项,然后查找“ Java Compiler”并更改“ Compiler Compliance Level”)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM