Java 中强制类型转换运算符与方法调用运算符是不同的,优先级与结合性都有区别,如下表所示:
优先级 | 运算符 | 结合性 |
1 | []数组运算 .点运算符 ()调用方法 | 从左到右 |
2 | ! ~ ++ -- +(一元加) -(一元减) ()强制类型转换 new | 从右到左 |
3 | * / % | 从左到右 |
4 | +(二元加) -(二元减) | 从左到右 |
5 | >> << >>> | 从左到右 |
6 | < <= > >= instanceof | 从左到右 |
7 | == != | 从左到右 |
8 | & | 从左到右 |
9 | ^ | 从左到右 |
10 | | | 从左到右 |
11 | && | 从左到右 |
12 | || | 从左到右 |
13 | ?: | 从左到右 |
14 | = += -= *= /= %= &= |= ^= <<= >>= >>>= | 从右到左 |