【问题标题】:Which comparison will go first? (c#) [duplicate]哪个比较会先进行? (c#) [重复]
【发布时间】:2018-11-05 19:42:53
【问题描述】:

它是如何工作的?哪个先跑?

给定

int a = 100;

下面会返回什么?

int b = a > 5 ? a > 10 ? 10 : 5 : 0;

【问题讨论】:

标签: c# ternary-operator


【解决方案1】:

你可以像这样重写你刚刚写的:

a > 5 ? ( a > 10 ? 10 : 5 ) : 0

毕竟,没有其他方法可以合理地安排括号。因此,必须首先测试a > 5 比较,因为如果a > 5 不计算为true,则不需要进行第二次比较。

【讨论】:

  • 您的代码缺少第一个?。 a > 5 ? (a > 10 ? 10 : 5 ) : 0
猜你喜欢
  • 1970-01-01
  • 2019-03-04
  • 2012-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-12
相关资源
最近更新 更多