java的&,&& ,|,||的区别

java的&,&& ,|,||的区别

先看题目:

        1、写出下面程序运行的结果
        int x = 1,y = 1;
        if(x++==2 && ++y==2)
        {
            x =7;
        }
        System.out.println("x="+x+",y="+y);
        
        运行结果:“x=2,y=1”;
        
        2、写出下面程序运行的结果
        int x = 1,y = 1;
        if(x++==1 || ++y==1)
        {
            x =7;
        }
        System.out.println("x="+x+",y="+y);
        
        运行结果:“x=7,y=1”

“&”和“&&”执行结果一样的
但“&”无论左边结果是怎样,都去执行右边;而“&&”若左边为Flase右边就执行。

相同的,“|”也和上面的“&” 无论左边结果是怎样,都去执行右边;
同上的“&&”的
“||”运算符:若运算符左边为true,则不再对运算符右侧进行运算

你可能感兴趣的:(java的&,&& ,|,||的区别)