決定操作員的操作順序時,我很困惑以下兩個說法。確定操作員的操作順序
- 聲明將從左到右執行。
- 它將根據運營商的優先順序執行。
下面的代碼從左至右執行向右
int i=5;
boolean b = i<5 && ++i<5;//line2
System.out.println(i);//prints 5
//left to right execution in line2.
//< is executed and ++ is not.Even though ++ has higher precedence.
但下面這段代碼似乎遵循優先順序:
int a=1,b=1,c=1;
boolean b = a==b&&b==c;//line2: (a==b)&&(b==c)
/* In line2 code would not run from left to right.
First a==b is evaluated then b==c and then && operator.*/
我也問過部分這個問題here但我以前不得到很好的足夠的解釋。 有人可以澄清?
子結果從左到右進行評估。我相信這是你對上一個問題的迴應 –