JDK 1.7 String switch语句不起作用

时间:2014-07-06 10:44:51

标签: java android switch-statement java-7

[固定]

感谢@Visil(接受回答)。我将推荐的代码添加到build.gradle并在同步gradle后等待。不久之后不久就出现了......

enter image description here


原始问题

我正在使用Android Studio 0.5.9进行一些Android编程,我希望有一些String切换语句。我设置了一切,但编译器抱怨它无法处理它们。

字符串开关语句是在JDK 1.7中引入的,所以我很困惑为什么我不能这样做。

为了证明我使用的是JDK 1.7,您可以查看下面的图片...... enter image description here

...另外,我的机器安装了JDK 1.8 ... enter image description here

......这是什么?


[UPDATE]

档案>>其他设置>>默认设置

enter image description here

档案>>其他设置>>默认项目结构

enter image description here

的build.gradle

enter image description here

1 个答案:

答案 0 :(得分:3)

请检查您的gradle源兼容性配置:

  

使用Android KitKat(buildToolsVersion 19),您可以使用钻石   operator,multi-catch,switch in strings,try with resources等。   为此,请将以下内容添加到构建文件中:

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 19
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}
     

请注意,您可以使用minSdkVersion,其值早于19   所有语言功能除了尝试使用资源。如果你想使用   尝试使用资源,您还需要使用19的minSdkVersion。

     

您还需要确保Gradle使用的是1.7或更高版本   JDK。 (以及Android Gradle插件的0.6.1或更高版本。)

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1.7