&與&&的區別?|與||的區別?
阿新 • • 發佈:2018-12-12
java中&與&&的區別及例項
相同點:
&&和&都是表示與的邏輯運算子,其運算結果一致
不同點:
&(邏輯與):當兩邊的表示式都為true的時候,整個運算結果才為true,否則為false。
&&(短路與):當第一個表示式的值為false的時候,則不再計算第二個表示式
注意: &還可以做位運算子,當表示式不是Boolean型別的時候
例項1(&):
public class DuanLuYu {
public static void main(String[] args) {
int x = 1,y = 1;
if(x++==2 & ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
}
}
輸出:
x=2,y=2
例項2(&&):
public class DuanLuYu {
public static void main(String[] args) {
int x = 1,y = 1;
if(x++==2 && ++y==2 )
{
x =7;
}
System.out.println("x="+x+",y="+y);
}
}
輸出:
x=2,y=1
java中 | 與 || 的區別及例項
相同點:
| 和 || 都是表示或的邏輯運算子,其運算結果一致
不同點:
|(邏輯或):當第一個表示式的值為true的時候,仍然計算第二個表示式。
||(短路或):當第一個表示式的值為true的時候,則不再計算第二個表示式
注意: | 還可以做位運算子,當表示式不是Boolean型別的時候
例項1( | ):
public class DuanLuHuo {
public static void main(String[] args) {
int x = 1,y = 1;
if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
}
}
輸出:
x=7,y=2
例項1( || ):
public class DuanLuHuo {
public static void main(String[] args) {
int x = 1,y = 1;
if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
}
}
輸出:
x=7,y=1