JAVA的運算子本身也有自己的優先順序,這邊舉個簡單的例子.
x = 1 + 2 * 3
得到的結果為7,先乘除後加減.
|
優先順序 |
運算子 |
|
1 |
() 括號 |
|
2 |
+ (正浩), - (負號), ++, -- |
|
3 |
*, /, % |
|
4 |
+(加號), -(減號) |
|
5 |
>>, <<, >>> |
|
6 |
<, >, <=, >=, instanceof |
|
7 |
!=, == |
|
8 |
& |
|
9 |
^ |
|
10 |
| |
|
11 |
&& |
|
12 |
|| |
|
13 |
?: |
|
14 |
=, +=, -=, *=, /=, <<=, >>=, >>>= |
舉例來說
x = 1 * 2 < 3 & 4 > 5 - 6 || 7 >= 8 - 9 && false
最後: x=true
x = 1 * 2 < 3 & 4 > 5 - 6 || 7 >= 8 - 9 && false
x = 2 < 3 & 4 > -1 || 7 >= -1 && false
x = true & true || true && false
x = true || true && false
x = true || false
x = true