区分&和&&
相同点1:&与&&的运算结果相同
相同点2:当符号左边时true时,二者都会执行符号右边的运算
不同点:当符号左边是false时,&会继续执行符号右边的运算但 &&不会(短路)
开发中推荐使用&&(短路)
boolean b1=true;
b1=false;
int num1=10;
if(b1&(num1++>0))
{
System.out.println("我现在在北京");
}
else
{
System.out.println("我现在在南京");
}
System.out.println("num1="+num1);
boolean b2=true;
b2=false;
int num2=10;
if(b2&&(num2++>0))
{
System.out.println("我现在在北京");
}
else
{
System.out.println("我现在在南京");
}
System.out.println("num2="+num2);
区分|和||
相同点1:|与||的运算结果相同
相同点2:当左边是false时两者都会执行右边的操作
不同点:当左边为true时|会执行右边操作而||不会执行右边操作
开发中推荐使用||(短路)
boolean b3=true;
b3=false;
int num3=10;
if(b3|(num3++>0))
{
System.out.println("我现在在北京");
}
else
{
System.out.println("我现在在南京");
}
System.out.println("num2="+num2);
boolean b4=true;
b4=false;
int num4=10;
if(b4||(num4++>0))
{
System.out.println("我现在在北京");
}
else
{
System.out.println("我现在在南京");
}
System.out.println("num2="+num2);