例子:
1 int a = 5;
2 int b = 10;
3
4 if(a > 4 | b++ > 10) {
5 System.out.println("a:"+a+"\nb:"+b);
6 }
運行結果:a:5
b:11
1 int a = 5;
2 int b = 10;
3 if(a > 4 || b++ > 10) {
4 System.out.println("a:"+a+"\nb:"+b);
5 }
運行結果:a:5
b:10
“|”和“||”用法的區別?
——“||”: 如果左邊計算後的操作數為true,右邊則不再執行,返回true;
“|”:前後兩個操作數都會進行計算。
也就是說:“|”不存在短路。
注:&與&&區別與此類似。&總會計算前後兩個操作數,而&&先計算左邊的操作數,如果左邊的操作數為false,則返回false,不會計算右邊的操作數。