Eclipse Java switch-case直通警告

时间:2016-08-12 13:39:29

标签: java eclipse

所以我已经让我的Eclipse编译器将这样的Switch Case漏洞标记为警告:

  

窗口>偏好> Java>编译器>错误/警告> '开关'   案件失败:--------------->警告

但是编译器并没有在下面的代码片段中警告我。我可以理解不会标记case 1,但肯定它应该标记为case 2?不是这个偏好设计的目标吗?

public static void main(String[] args) {
    int a = 2;
    switch (a) {
    case 1:
    case 2:
        System.out.println("Yay!");
    case 5:
        System.out.println("No!");
        break;
    default:
    }
}

产生输出:

  

耶!

     

没有!

我尝试将级别更改为错误,当然也没有产生任何影响。

我正在使用Eclipse Neon,BTW。其他人在安装时会注意到这种行为吗?

2 个答案:

答案 0 :(得分:4)

不,我收到了警告(Eclipse Mars)。也许你没有启用自动编译?或者您可能有一个项目特定的设置覆盖全局配置设置?

答案 1 :(得分:1)

您需要重建项目才能使警告生效。我将main方法原样复制并粘贴到我的一个项目文件中,我可以毫无问题地看到警告。使用Neon 4.6.0。

enter image description here