繁体   English   中英

关于java中条件运算符的问题

[英]questions on conditional operator in java

我从哈立德·穆加尔和其他人那里读到条件运算符是正确关联的。

有人可以向我解释这意味着什么并向我展示一个简单的例子吗?

它是右关联的,因为它在Java语言规范中被指定为:

条件运算符在语法上是右关联的(它从右到左分组),因此a?b:c?d:e?f:g表示与?b相同:(c?d:(e?f) :G))。

原始规范中的引用提供了一个示例(或者至少可以用于在Java中编写基于main的快速演示的东西)

条件运算符?:右关联的,因为右侧首先计算

解释条件运算符的简单表达式是

condition ? value if true : value if false

一个例子是

boolean ? (10+20):(30+40)

在任何情况下,无论是真还是假,首先在右侧评估/计算值,然后根据条件返回值

进一步的解释它在语法上是右关联的(它从右到左分组),因此a?b:c?d:e?f:g表示与?b相同:(c?d:(e? F:G))。

还要考虑Wiki定义

运算符关联性(或固定性)是一个属性,用于确定在没有括号的情况下如何对相同优先级的运算符进行分组 。”

希望有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM