无法在JRE7中打开String

时间:2011-10-20 18:03:16

标签: java switch-statement

我在jre7上,我仍然无法打开字符串。我安装了jdk7更新1并将Eclipse指向它但仍然没有运气。知道我做错了吗?

以下是代码:

String code = "something";
switch(code) {
    case "xxx": dosomehting(); break;
    default: dosomethingelse(); break;
}

我得到的错误:

  

无法打开String类型的值。只允许使用可转换的int值或枚举常量。

3 个答案:

答案 0 :(得分:2)

我很确定Eclipse 3.7仅支持jdk 1.6。你需要3.7.1根据 http://download.eclipse.org/eclipse/downloads/drops/R-3.7.1-201109091335/index.php

(记住:Eclipse不使用suns编译器,他们使用自己的,所以安装jdk 1.7是不够的。)

只需打开eclipse并选择help->检查更新。 - 那应该升级到3.7.1

答案 1 :(得分:1)

听起来你仍然在尝试使用旧的JDK [6或更早版本]进行编译安装JDK,并确保Eclipse设置反映新平台。另外,检查您的项目是否反映了JDK7平台。

答案 2 :(得分:0)

有三件事需要检查:

  • 确保Eclipse仍未指向旧版(6)的JDK安装。
  • 确保您没有选择较低的源级别进行编译;例如。 -source 1.6。
  • 确保您使用的是支持Java 7语法的Eclipse版本。