Java基础09
运算法则与运算符级别
- 在Java中,如果不使用圆括号,就按照给出的运算符优先级次序进行计算。
- 同一个级别的运算符按照从左到右的次进行计算(但右结合运算符除外)
- 例如: 由于"&&“的优先级比” || “的优先级高,所以表达式:a && b || c 等价于 (a && b)|| c,又因为” += "是右结合运算符,所以表达式:a += b += c 等价于 a +=(b += c),也就是将 b += c 的结果(加上c之后的b)加到 a 上。
运算符优先级
运算符 | 优先级 |
---|---|
[ ]、()(方法调用) | 从左向右 |
!、~ 、++ 、- - 、+ 、(一元运算)-(一元运算)、()(括号用于强制转换类型)、new | 从右向左 |
*、/、% | 从左向右 |
+、- | 从左向右 |
<<、>>、>>> | 从左向右 |
<、<=、>、>=、instanceof | 从左向右 |
==、!= | 从左向右 |
& | 从左向右 |
^ | 从左向右 |
| | 从左向右 |
&& | 从左向右 |
|| | 从左向右 |
?: | 从右向左 |
=、=+、-=、*=、/=、%=、&=、|= 、^=、<<=、>>=、>>>= | 从右向左 |