java的邏輯表達式(||、&&)經常出現一些短路現象,以下面代碼爲例
public static void main(String[] args){
int a=1,b=2;
if(++a==2||++b==3){
System.out.println("a="+a+" b="+b);
}
}
輸出結果爲 a=2,b=2。
很顯然,if語句中(++a=2||++b==3)表達式,++b並沒有執行,當判斷出++a==2時,表達式爲真,++b就被短路了。
綜上,使用邏輯表達式應注意:
儘量不要在邏輯表達式中添加運算成分