现在是这样的如果x是false,退出

解决方案 »

  1.   

    我的意思是if语句在比较X and Y 时如果发现x==false就应该马上返回 false,他为什么还要去求Y的值
      

  2.   

    只要x为假,就不对y求值。
    不信可以试一下:
    private void Form1_Load(object sender, System.EventArgs e)
    {
    if (a() && b())
    {
    MessageBox.Show ("a&&b","aaa");
    }
    } private bool a()
    {
    MessageBox.Show ("a","aaa");
    return false;
    } private bool b()
    {
    MessageBox.Show ("b","aaa");
    return false;
    }结果是只显示a,不显示b
      

  3.   

    同意zhcyidea。
    如果第一个false的话,就不去检查后面的了。这就是&& 和 &得区别以及优势。
      

  4.   

    本来就是这样啊
    如果你想让它求出Y的值,可以使用
    if(X & Y)
      

  5.   

    if(X == true)
    {
        if(Y == true)
        {
            /// 
         }
    }
      

  6.   

    去查插&与&&的区别,自己查的东西记的牢!◎
      

  7.   

    同意 shuker(秋风儿,学习.net) 的说法,同样的目的,可以按他说的实现