java中运算符的优先级

时间:2021-11-21 17:59:32

所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

java中运算符的优先级

级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 7 + 3 * 2  得到的结果是 13 “先乘后加”嘛!

PS:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。例如:

java中运算符的优先级

分析:小括号优先级最高,因此

1、 执行 a + 18 ,结果为 30

2、 执行( a + 18 ) % 4 取模,结果为 2

3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24

例子1:

public class HelloWorld {
    public static void main(String[] args) {
        int m = 5;
        int n = 7;
        int x=(m*8/(n+2))%m;
        System.out.println("m:" + m);
        System.out.println("n:" + n);
        System.out.println("x:" + x);
    }
}

运行结果:
m:5
n:7
x:4

例子2:

表达式( 11+ 3* 8 ) / 4 % 3 的结果是?

第一步:计算3*8,结果为24;第二步:计算11+3*8,结果为35;第三步:计算(11 + 3 * 8) / 4,结果为8;第四步:计算(11 + 3 * 8) / 4 % 3,结果为2