【问题标题】:Is this an example of a ternary condition or is it something unrelated / different, i = j = 0?这是三元条件的一个例子,还是不相关/不同的东西,i = j = 0?
【发布时间】:2018-04-12 00:18:31
【问题描述】:

我最近了解了三元条件(特别是使用 : 和 ?、冒号和问号来创建一个使用问号作为 if 语句和分号作为 else 语句的条件。我最近遇到了这样的语句, i = j = 0。这是同一种情况吗?语句是说:

if j = 0
{
    i == j
}
else
{
    i != j
}

或者它指的是我还没有学到的不同的东西,如果是,请说明语句的目的是什么,以及它是如何工作的。此外,我在网站上找不到这个确切的问题,但如果这是重复的,或者如果有另一个网站可以参考我们来回答这个问题,我很乐意删除问题,然后我会去看看那个网站的信息是什么。不过,我会很感激您的意见,因为我相信这个网站在解释方面比任何其他网站都做得最好。感谢大家的帮助!如果您有任何问题,请随时在 cmets 中提问!

【问题讨论】:

  • 你说的是三元specifically using : and ?这里没有?:,怎么可能是同一个东西?
  • 这只是对 2 个自变量的赋值,i & j
  • @Amit 谢谢!我不知道有两部分赋值语句这样的东西。
  • @John3136 我认为可能有不同的方法来创建三元语句。我没想到:和?必须专门用于创建一个。现在,我知道了。
  • @John3136:“三元”一词的意思是由三个项目组成,而不是由冒号和问号组成。一个知道 C 有一个三元运算的人认为它可能还有其他运算是完全合理的。

标签: java if-statement conditional-statements


【解决方案1】:
i=j=0

这只是一个赋值语句。此行执行后,两个变量的值都为 0。

【讨论】:

  • 具体是将0赋值给j,然后将j的值赋值给i。与i = (j = 0)j = 0; i = j; 相同。
  • @AndyTurner 谢谢,这就是我在上面发布给 Eric Postpischil 的评论中寻找的内容,因此它仍会将 j 设置为 0,但之后将设置第二个分配i 到 j(或者(你可以这样想)因为 i 到 0 的传递性)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-09
  • 2010-12-11
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 1970-01-01
相关资源
最近更新 更多