java - IDE 表明我的 if else 语句是多余的,我需要解释原因

标签 java if-statement boolean

我是编程初学者。 Netbeans IDE 指示以下 if-else 语句是多余的:

public boolean x = false;

private void add_labelMouseClicked(java.awt.event.MouseEvent evt) {                                       

    jPanel2.setVisible(x);
        if(x==false){
            x=true;
        }else
            x=false;
}         

如果我使用 IDE 更正这个 if-else 语句,它会将代码变成这样:

public boolean x = false;

private void add_labelMouseClicked(java.awt.event.MouseEvent evt) {                                       

    jPanel2.setVisible(x);
       x = x == false;
} 

我需要对第二个代码进行简单的解释,以及为什么它具有与第一个代码类似的功能。

编辑:感谢大家详细解释,我现在真的明白了,今天我学到了一些新东西,感谢大家的回复。 (后来我觉得自己很傻哈哈)

最佳答案

请通读第二个。

这部分很好而且简单 - 设置 x

x = 

正在设置的下一部分

x == false

它正在评估 x 并检查其是否为 false,如果为 false,则将 x 设置为 true,否则将 x 设置为 false。

由于您基本上否定 x,因此您可以使用

x = !x

这只会在 true 和 false 之间翻转 x

关于java - IDE 表明我的 if else 语句是多余的,我需要解释原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39771940/

相关文章:

java - Dagger2 找不到带注释的方法

python - 具有嵌套循环和 if 条件的列表理解,以及新列表的成员资格

android - 如何在没有嵌套 IF ELSE 语句的情况下处理 Android onSharedPreferenceChanged

用于 boolean 返回的 Javascript 函数

asp.net-mvc - MVC 4.0 字符串未被识别为有效的 boolean 值

c++ - cin 和 boolean 输入

java - 无法让我的代码在另一个图像的尺寸内生成图像。使用 LibGDX

java - 如何在可停靠设备中使用 osgi 服务?

java - Action 监听器,执行 Gui

Perl 跳出 If 语句