Java:println中的布尔值(布尔值?“打印为真”:“打印为假”)

我遇到了这种语法:

System.out.println(boolean_variable ? "print true": "print false");

  • 这个带有两个点的语法是什么?
  • 在哪里可以找到有关它的信息?
  • 它仅适用于布尔值还是以其他不同方式实现?

回答:

?

:是条件运算符。(不只是:一部分,整个方法参数是示例中条件运算符的一种用法。)

它通常被称为三元运算符,但这只是其本质的一个方面-具有三个操作数-

而不是其名称。如果在Java中引入了另一个三元运算符,则该术语将变得模棱两可。之所以称为条件运算符,是因为它有一个 条件

(第一个操作数),该条件然后确定要对其他两个操作数中的哪个进行求值。

第一操作数进行评估,然后 要么 在第二 第三操作数基于所述第一操作数是真还是假评价…,这最终成为操作者的结果。

所以像这样:

int x = condition() ? result1() : result2();

大致相当于:

int x;

if (condition()) {

x = result1();

} else {

x = result2();

}

重要的是 不要 评估另一个操作数。因此,例如,这很好:

String text = getSomeStringReferenceWhichMightBeNull();

int usefulCharacters = text == null ? 0 : text.length();

以上是 Java:println中的布尔值(布尔值?“打印为真”:“打印为假”) 的全部内容, 来源链接: utcz.com/qa/419955.html

回到顶部