Java中运算符“|”和“||”以及“&”和“&&”区别

文章转载自:https://www.cnblogs.com/annofyf/p/9211925.html

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,则不再对运算符右侧进行运算,如下代码:

int a =1,b=1;        
if(a++ == 1 || ++b == 2)
     System.out.println("true");
System.out.println("a= "+ a + "  ,b=  " + b);

左侧为true,所以没有判断运算符右侧语句,输出结果为:

true
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则不再对右侧语句进行判断:

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输出结果:
a= 2 ,b= 1

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章