Java运算符优先级
序列号 |
符号 |
名称 |
结合性(与操作数) |
目数 |
说明 |
1 |
. |
点 |
从左到右 |
双目 |
|
( ) |
圆括号 |
从左到右 |
|
| |
[ ] |
方括号 |
从左到右 |
|
| |
2 |
+ |
正号 |
从右到左 |
单目 |
|
- |
负号 |
从右到左 |
单目 |
| |
++ |
自增 |
从右到左 |
单目 |
前缀增,后缀增 | |
- - |
自减 |
从右到左 |
前缀减,后缀减 | ||
~ |
按位非/取补运算 |
从右到左 |
单目 |
| |
! |
逻辑非 |
从右到左 |
单目 |
“!”不可以与“=”联用 | |
3 |
* |
乘 |
从左到右 |
双目 |
|
/ |
除 |
从左到右 |
双目 |
整数除法:取商的整数部分,小数部分去掉,不四舍五入 | |
% |
取余 |
从左到右 |
双目 |
| |
4 |
+ |
加 |
从左到右 |
双目 |
|
- |
减 |
从左到右 |
双目 |
| |
5 |
<< |
左移位运算符 |
从左到右 |
双目 |
|
>> |
带符号右移位运算符 |
从左到右 |
双目 |
| |
>>> |
无符号右移 |
从左到右 |
双目 |
| |
6 |
< |
小于 |
从左到右 |
双目 |
关系运算符“大于”说明 |
<= |
小于或等于 |
从左到右 |
双目 |
| |
> |
大于 |
从左到右 |
双目 |
| |
>= |
大于或等于 |
从左到右 |
双目 |
| |
instanceof |
确定某对象是否属于指定的类 |
从左到右 |
双目 |
| |
7 |
== |
等于 |
从左到右 |
双目 |
关系运算符“==”说明 |
!= |
不等于 |
从左到右 |
双目 |
| |
8 |
& |
按位与 |
从左到右 |
双目 |
|
9 |
| |
按位或 |
从左到右 |
双目 |
|
10 |
^ |
按位异或 |
从左到右 |
双目 |
|
11 |
&& |
短路与 |
从左到右 |
双目 |
|
12 |
|| |
短路或 |
从左到右 |
双目 |
|
13 |
? : |
条件运算符 |
从右到左 |
三目 |
|
14 |
= |
赋值运算符 |
从右到左 |
双目 |
|
+= |
混合赋值运算符 |
| |||
-= |
| ||||
*= |
| ||||
/= |
| ||||
%= |
| ||||
&= |
| ||||
|= |
| ||||
^= |
| ||||
<<= |
| ||||
>>= |
| ||||
>>>= |
|