1. 程式人生 > 其它 >第二章 4-邏輯運算子

第二章 4-邏輯運算子

邏輯運算子:& && | || ! ^
【典型程式碼】

區分& 和 && 的區別
//邏輯&
相同點:運算結果相同
當符號左邊都為true,& 和 && 都會繼續執行符號右邊的運算。
不同點:
當符號左邊都為false時,& 會繼續執行符號右邊的運算,而&& 則不會繼續執行符號右邊的運算。

//開發中,舉薦使用&&

boolean b1 = true;
//b1 = false;
int num1 = 10;
if(b1 & num1++ > 0){
System.out.println("我在北京");//b1 = true 我在北京
}else{
System.out.println("我在南京");//b1 = false 我在南京
}
sSystem.out.println("b1 = " + b1 + ",num1 = " + num1);//b1 = true時,繼續執行 & 右邊運算: num1 = 11

//System.out.println("b1 = " + b1 + ",num1 = " + num1);//b2 = false時,繼續執行 & 右邊運算:num1 = 11

//邏輯&&
boolean b2 = true;
//b2 = false;
int num2 = 10;
if(b2 && num2++ > 0){
System.out.println("我在北京");//b2 = true時,我在北京
} else{
System.out.println("我在南京");//b2 = false時,我在南京
}

System.out.println("b2 = " + b2 + ",num2 = " + num2);//b2 = true時,繼續執行&&右邊運算 :num2 = 11

//System.out.println("b2 = " + b2 + ",num2 = " + num2);//b2 = false時,不繼續執行&&右邊運算 :num2 = 10

區分 | 和 || 的區別
//邏輯 |
相同點:| 和 || 運算結果相同
當符號左邊為false時, | 和 || 都會繼續執行符號右邊的運算
不同點:
當符號左邊為true時,| 會繼續執行符號右邊的運算,而||則不會繼續執行符號右邊的運算。

//開發中,舉薦使用||

boolean b3 = false;
b3 = true;
int num3 = 10;
if(b3 | num3++ > 0){
System.out.println("我在北京");// 都在北京
}else{
System.out.println("我在南京");
}

System.out.println("b3 = " + b3 + ",num3 = "+ num3);//b3 = fale時,繼續執行 | 右邊運算 num3 = 11
System.out.println("b3 = " + b3 + ",num3 = "+ num3);//b3 = true時,繼續執行 | 右邊運算 num3 = 11

//邏輯 ||
boolean b4 = false;
b4 = true;
int num4 = 10;
if(b4 || num4++ > 0){
System.out.println("我在北京");//都在北京
}else {
System.out.println("我在南京");
}

System.out.println("b4 = " + b4 + ",num4 " + num4);//b4 = false時,繼續執行 || 右邊運算: num4 = 11
System.out.println("b4 = " + b4 + ",num4 " + num4);//b4 = true時,不會繼續執行 || 右邊運算: num4 = 10

【特別說明】
1.邏輯運算子操作的都是boolean型的變數,而結果也都是boolean型