优先级

langpo / 2024-10-22 / 原文

在Java中,运算符优先级决定了表达式中各个运算符的求值顺序。了解运算符的优先级对于正确理解和编写复杂的表达式非常重要。以下是Java中运算符的优先级列表,从最高优先级到最低优先级排列:

1. 后缀运算符
expr++:后缀递增
expr--:后缀递减
2. 前缀运算符
++expr:前缀递增
--expr:前缀递减
+expr:一元正号
-expr:一元负号
~:按位取反
!:逻辑非
3. 乘法、除法和取模运算符
*:乘法
/:除法
%:取模
4. 加法和减法运算符
+:加法
-:减法
5. 位移运算符
<<:左移
>>:右移(带符号)
>>>:右移(无符号)
6. 关系运算符
<:小于
<=:小于等于
>:大于
>=:大于等于
instanceof:类型比较
7. 等价运算符
==:等于
!=:不等于
8. 位与运算符
&:按位与
9. 位异或运算符
^:按位异或
10. 位或运算符
|:按位或
11. 逻辑与运算符
&&:逻辑与
12. 逻辑或运算符
||:逻辑或
13. 条件运算符
? ::三元条件运算符
14. 赋值运算符
=:简单赋值
+=:加法赋值
-=:减法赋值
*=:乘法赋值
/=:除法赋值
%=:取模赋值
&=:按位与赋值
^=:按位异或赋值
|=:按位或赋值
<<=:左移赋值
>>=:右移赋值(带符号)
>>>=:右移赋值(无符号)