如果我有一个 if 语句
if (var1 || var2 && var3)
{
//anything
}
它评估这些变量的顺序是什么?
我想我真正想知道的是这个 if 语句是否相当于
if ((var1 || var2) && var3){}
//or
if (var1 || (var2 && var3)){}
首先顺序是否重要
我知道我可以用括号来澄清这一点,它会按照我期望的顺序评估它们。但我想知道当不存在括号时它们的默认查看方式。
最佳答案
来自docs , &&
优先于 ||
。建立优先级后,从左向右流动。因此,在您的示例中,最终结果为 if (var1 || (var2 && var3)){}
。
关于c# - "if"语句中复合 bool 表达式的运算顺序是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33743409/