必须在Java中的switch语句中输入常量?

时间:2015-04-01 20:48:51

标签: java

我正在尝试创建它,以便用户输入关键字并执行该情况。这工作正常,但我希望用户也能够在关键字后写,它仍然会找到正确的情况。例如,用户可能输入" SEARCH狗和猫"它将运行" SEARCH"案件。

我试图有一个临时变量只存储" SEARCH"字符串的一部分,但我收到一个错误,它必须是switch语句中的常量。有解决方法还是我必须使用if else语句?

以下是一些错误的测试代码:

switch(textField.getText)
{
   case SEARCH: case textField.getText().split(" ", 2)[0]:  // Error is occuring on the second case statement 
   // Statements
   break;

   case Default:
   lblOutput.setText("ERROR: NOT FOUND");
}

1 个答案:

答案 0 :(得分:0)

您需要在案例陈述中指定三件事之一:

  1. 常数
  2. An Enum
  3. 默认关键字
  4. 参考 https://docs.oracle.com/javase/specs/jls/se7/html/jls-14.html#jls-14.11

    此外,您在“案例”中有一个“案例”,没有中间的“开关”声明。