问题:
实现以下功能:
if(f(1)&&f(2)&&f(3))
{
   执行体
}
正常来说,if语句是判断完f(1)后判断f(2),接着判断f(3)
只有三个全部为true才执行执行体,有一种跟if很像的关键字,可以实现当F(1)判断为false时不再判断f(2)跟f(3).
大家知道是那个关键字吗?

解决方案 »

  1.   

    就是&&这个啦,你不是用了,这个比&效率更高
      

  2.   

    楼主你写的本身就是对的
    1楼的弄反了,&&才是短路与 
      

  3.   

    正常来说,if语句是判断完f(1)后判断f(2),接着判断f(3)
    ----------------------
    LZ的論調是錯誤的,VB才是這樣,C#不是這樣的。
    C#如果前面的表達式為false,後面的就不會再判斷了
      

  4.   

    条件“与”运算符 (&&) 执行其 bool 操作数的逻辑“与”运算,但仅在必要时才计算第二个操作数。
      

  5.   

    將下面兩段程序測試對比一下,就清楚了。
    程序一:    class Program
        {
            static void Main(string[] args)
            {
                int a = 1;
                int b = 0;
                if (a / b == 0 && a != 1)
                {
                    Console.WriteLine("沒問題!");
                }
                Console.WriteLine("按任意鍵退出...");
                Console.ReadKey();
            }
        }程序二:    class Program
        {
            static void Main(string[] args)
            {
                int a = 1;
                int b = 0;
                if (a != 1 && a / b == 0)
                {
                    Console.WriteLine("沒問題!");
                }
                Console.WriteLine("按任意鍵退出...");
                Console.ReadKey();
            }
        }
      

  6.   

    不是啦,我想说的是当当F(1)判断为false时不再判断f(2)跟f(3). 事实上是这三个全部都判断一遍才得出最终的Ture或false,我只想当第一个判断条件不成立时后面的条件不进行判断,关键是后面的条件不进行判断.
    不是我这个代码正确与否的问题,我在问有那个关键字能够实现"判断体当第一个判断条件不成立时后面的条件不进行判断,关键是后面的条件不进行判断."
      

  7.   

    不好意思 搞错了 嘿嘿短路与&&
      

  8.   

    &&的确不会判断false之后的判断.
    int a = 1;
    int b = 0;
    if(a != 1 && a/b == 0)
    是不会出错的
      

  9.   

    事实上是这三个全部都判断一遍才得出最终的Ture或false有一点说明c#是从右往左进行条件判断的吧?--------------------------
    這些都是誰告訴你的?你用我的代碼測試一下先,你就知道了。多說沒有意義
      

  10.   

    感谢大家,结贴.boblaw 方便给个QQ联系方式吗?