我在我们的代码库中找到了以下代码片段。这是广泛使用的代码,没有引起任何问题,我不知道为什么。
element = someBoolean ?
element = parentElement :
element;
第二行不应将
element
重置为空值或将其设置为parentElement
后的其他内容ETA:我想知道
element = parentElement
子句的返回值是什么,因为在那儿似乎没有任何返回值。我忘记了Java中有多个分配的概念,因此element只会被设置两次。 最佳答案
第二行不应该将元素重置为空值,或者
设置为parentElement之后的内容
我不知道你为什么会这样想。整个语句的目的是可能将element
重新分配给parentElement
。该语句等效于:
element = someBoolean ?
parentElement:
element;
这是因为赋值语句(
element = parentElement
)具有RHS的值(即parentElement
)。不过,我只是这样写:if (someBoolean) {
element = parentElement;
}