Java 运算符优先级
·
在 Java 中,每个运算符都有一个优先级,优先级高的运算符会先执行,而优先级低的运算符会后执行。如果有多个运算符在同一个表达式中出现,那么需要按照运算符优先级的规则确定它们的执行顺序。
Java 运算符的优先级如下所示(从高到低):
- 后缀运算符:++、–
- 一元运算符:+、-、!、~、++、–、(类型)
- 乘法运算符:*、/、%
- 加法运算符:+、-
- 移位运算符:<<、>>、>>>
- 关系运算符:<、<=、>、>=
- 相等运算符:==、!=
- 按位与运算符:&
- 按位异或运算符:^
- 按位或运算符:|
- 逻辑与运算符:&&
- 逻辑或运算符:||
- 条件运算符:? :
- 赋值运算符:=、+=、-=、*=、/=、%=、&=、^=、|=、<<=、>>=、>>>=
需要注意的是,如果不确定运算符的优先级,可以使用括号来明确运算的顺序。例如:
int a = 10, b = 3, c = 5;
int d = (a + b) * c; // 先执行加法运算,再执行乘法运算
在上面的例子中,加法运算符的优先级高于乘法运算符,但是使用括号可以确保先执行加法运算,再执行乘法运算。
需要注意的是,如果多个运算符的优先级相同,那么需要按照结合性的规则确定它们的执行顺序。例如,赋值运算符的结合性是从右到左,因此可以写出如下的代码:
int a = 10, b = 3, c = 5;
a = b = c; // 先执行 b = c,再执行 a = b = c
在上面的例子中,赋值运算符的优先级相同,但是按照结合性的规则,先执行 b = c,再执行 a = b = c。
综上所述,Java 运算符的优先级和结合性是编写 Java 程序时必须了解的基本知识之一。在使用运算符时,需要按照优先级和结合性的规则确定运算的顺序,避免出现语法错误或逻辑错误。如果不确定运算符的优先级或结合性,可以使用括号来明确运算的顺序。
更多推荐
已为社区贡献3条内容
所有评论(0)