这个问题不是重复的,因为没有任何来自线程的修复,这是一个“重复”的工作对我来说。IntelliJ IDEA Switch Statement Error
我正在制作一个基本的计算器程序作为我的第一个Java程序。要做到这一点,我使用switch语句来选择公式操作,但是当我尝试运行switch语句,我得到一个错误:
java: strings in switch are not supported in -source 1.6 (use -source 7 or higher to enable strings in switch).
我已经检查了其他的答案,但他们都不是有道理的在我的情况。我正在使用Java 8 JDK,我的项目级别是8,应该足够高以运行此代码。
我的代码:
boolean pass = false;
char sOP = 'n';
while(pass == false) {
System.out.print("Operator, +, -, *, or /: ");
String op = scanner.nextLine();
switch (op) {
case "+":
sOP = '+';
pass = true;
break;
case "-":
sOP = '-';
pass = true;
break;
case "*":
sOP = '*';
pass = true;
break;
case "/":
sOP = '/';
pass = true;
break;
default:
System.out.println("Invalid operator, please reenter.");
pass = false;
}
}
我应该怎么做才能解决这个问题?
这不是Intellij相关的。它可能是任何体面的IDE,你会得到和等效的错误消息。 – ChiefTwoPencils
如果您确定自己的一切都正确,那么重建或重新启动会有所帮助。这个错误似乎表明,虽然你正在使用的地方7. – ChiefTwoPencils
Bneac,包括第二个问题,与错误和标题指出的主要问题无关,可能不是一个好主意,因为人们很可能会错过它,而答案只会针对你问题的第一部分。由于这些原因,最好问第二部分(关于表达式的动态评估)作为一个单独的问题。 – jpw