1.“|”运算符:不论运算符左侧为true还是false,右侧语句都会进行判断,下面代码
int a =1,b=1;
if(a++ == 1 | ++b == 2)
System.out.println("true");
System.out.println("a= "+ a + " ,b= " + b);
左侧为true,右侧为true,输入出结果为:
true
a= 2 ,b= 2
2.“||”运算符:若运算符左边为true,则不再对运算符右侧进行运算,如下代码:
1 int a =1,b=1;
2 if(a++ == 1 || ++b == 2)
3 System.out.println("true");
4 System.out.println("a= "+ a + " ,b= " + b);
左侧为true,所以没有判断运算符右侧语句,输出结果为:
1 true
2 a= 2 ,b= 1
3.&运算符与|运算符类似:不论运算符左侧为true还是false,右侧语句都会进行判断:
int a =1,b=1;
if(a++ == 2 & ++b == 2)
System.out.println(true);
else
System.out.println(false);
System.out.println("a= "+ a + " ,b= " + b);
&运算符左侧为false,单依然会运行右侧语句输出为:
false
a= 2 ,b= 2
4.“&&”运算符与“||”运算符类似:若运算符左侧为false则不再对右侧语句进行判断:
1
2
3
4
5
6
|
int a = 1 ,b= 1 ; if (a++ == 2 && ++b == 2 ) System.out.println( true ); else System.out.println( false ); System.out.println( "a= " + a + " ,b= " + b); |
输出结果:
1 false
2 a= 2 ,b= 1