Java中的表达式就是使用运算符连接起来的符合Java规则的式子。运算符的优先级决定了表达式中运算执行的先后顺序。通常优先级由高到低的顺序依次是:
l 增量和减量运算
l 算术运算
l 比较运算
l 逻辑运算
l 赋值运算
如果两个运算有相同的优先级,那么在左边的表达式要比在右边的表达式先被处理。表1显示了在Java里众多运算符的特定的优先级。
表1 运算符的优先级别
优先级 |
描述 |
运算符 |
高 低 |
括号 |
( ) |
正负号 |
+ - |
|
一元运算符 |
++ -- ! |
|
乘除 |
* / % |
|
加减 |
+ - |
|
移位运算 |
<< >> >>> |
|
比较大小 |
< > >= <= |
|
比较是否相等 |
== != |
|
按位与运算 |
& |
|
按位异或运算 |
^ |
|
按位或运算 |
| |
|
逻辑与运算 |
&& |
|
逻辑或运算 |
|| |
|
三元运算符 |
?: |
|
赋值运算符 |
= += -= *= /= %= |
技巧:在编写程序时尽量使用括号()运算符号来限定运算次序,以免产生错误的运算顺序。