Java 运算符优先级
java programming java8java technologies object oriented programming
运算符优先级决定了表达式中项的分组。这会影响表达式的求值方式。某些运算符的优先级高于其他运算符;例如,乘法运算符的优先级高于加法运算符 −
例如,x = 7 + 3 * 2;这里 x 被赋值为 13,而不是 20,因为运算符 * 的优先级高于 +,因此它先与 3 * 2 相乘,然后再与 7 相加。
此处,优先级最高的运算符显示在表格顶部,优先级最低的运算符显示在表格底部。在表达式中,优先级较高的运算符将首先求值。
类别 | 运算符 | 结合性 |
---|---|---|
后缀 | >() [] . (点运算符) | 从左到右 |
一元 | >++ - - ! ~ | 从右到左 |
乘法 | 从左到右 | |
加法 | 从左到右 | |
移位 | >>> >>> << | 从左到右 |
关系 | >> >= < <= | 从左到右 |
相等 | >== != | 从左到右 |
按位与 | >& | 从左到右 |
按位异或 | >^ | 从左到右 |
按位或 | | | 从左到右 |
逻辑与 | >&& | 从左到右 |
逻辑或 | >|| | 从左到右 |
条件 | ?: | 从右到左 |
作业 | >= += -= *= /= %= >>= <<= &= ^= |= | 从右到左 |