一两个“if”语句之间的差异

问题描述 投票:-2回答:3

我想现在(理论上)使用之间的区别是什么

if (a == x && b == y)

if (a == x){
    if (b == y){

    }
}

编辑:我的问题不是关于结果,而是关于表演的更多信息。我发现那种类型的表然后搜索它更有效,直接进行研究。我想知道这个是否有相同的东西,或者编译器只是将'和'替换为另一个if

谢谢

c# if-statement
3个回答
0
投票

当你使用&&逻辑运算符时,如果第一次表达式为false,则不会计算第二次表达式。所以理论上两个例子都是一样的。


-1
投票

在第一种情况下:

if (a == x && b == y)
{
    // code block
}

除非两个条件a == x && b == y为真,否则代码块永远不会执行

但在第二种情况下:

if (a == x)
{
    // code block 1

    if (b == y)
    {
        // code block 2
    }
}

当只有第一个条件a == x为真时代码块1才会执行,但是当两个条件a == x && b == y为真时代码块2将执行


-1
投票

如果(a == x && b == y)

1)在这种情况下,值都应该为真,意味着它们必须满足条件,然后只有if条件才能满足。

另一方面 :

如果(a == x){

   If( b == y){

       }
}
  • 在这种情况下,如果第一个条件通过装置(a == x)满足,那么我们进入if条件然后我们检查第二个条件(b == y)。意味着它按顺序工作。您还可以在满足第一个条件后执行某些功能。
© www.soinside.com 2019 - 2024. All rights reserved.