Java 7切换语句,字符串不起作用

根据 The Java Tutorials,在 Java SE 7和更高版本中,您可以在switch语句的表达式中使用String对象.
String s = ...
switch(s){
    //do stuff
}

但这是真的吗?我已经安装了JRE并将其添加到Eclipse项目的构建路径,但是我收到以下编译时错误

Cannot switch on a value of type
String. Only convertible int values or
enum constants are permitted

此外,我想我已经配置正确,因为我可以使用其java.nio.file.Files类以及JLayer.

有任何想法吗?

解决方法

虽然JDT团队确实实施了 Switch on String feature,但对Java 7的支持不会在Eclipse 3.7.1之前:

bug 288548

Due to late availability of JSR-292 (Invoke Dynamic) and JSR-334 (Project Coin)
and due to the official release date (July 28,2011) of Java 7 being after 3.7
ships we had to defer the Java 7 support to 3.7.1. It has not yet been decided
whether this will be available as part of the 3.7.1 downloads or as separate
feature update.

The work for the Java 7 features is currently in progress in the ‘BETA_JAVA7’ branch and we will deliver separate updates for the stable builds in order to provide early access to the Java 7 features for interested parties.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...