1

有没有办法在条件为的情况下进行 if 语句(x "not"<= 90)?或者是这样做的唯一方法,(x <= 90)if部分中使用并且如果这是真的结果什么都不做,然后执行任何需要在else? 我应该提到我正在用 Java 做这个。

4

3 回答 3

8

您可以使用反转语句

if(!(x <= 90))

或者只是改变它

if(x > 90)
于 2013-11-03T21:19:25.240 回答
2

!符号称为“非运算符”或“爆炸符号”。

它“否定”它后面的任何布尔值。

您可以在任何计算结果为布尔值的表达式前面使用它。

例子:

int a = 4;
int b = 5;
boolean isGreater = ( a > b );
if (!isGreater) {
    System.out.println("a is NOT greater than b");
}
于 2013-11-03T21:37:57.443 回答
1

可悲的是,您甚至不需要知道如何编写它,因为您的 IDE 可以为您完成。在 IntelliJ 中,如果你写

if (x <= 90)
   doSomething();

然后在 if 子句上按 alt-enter,您可以选择翻转条件并将其更改为

if (x > 90) {

} else {
   doSomething();
}

相似地

if(x <= 90 && x >= 60)

可以重构为

if (60 <= x && x <= 90)

并翻转到

if (60 > x || x > 90)

并重构为

if (x < 60 || 90 < x)

无需自己接触代码。

于 2013-11-03T21:28:32.253 回答