Java面试题26——运算符优先级

运算符优先级

1.Java中的运算符优先级:

口诀:单目乘除为关系,逻辑三目后赋值。(大佬总结的)

口诀解释:

单目:指的是例如正负(±)这些一次只作用于一个变量的运算符,又叫一元运算符。

乘除:乘、除、模 ,毫无疑问优先级比加减高一级

为:即谐音“位”,指的是位运算中用到的符号:~(按位取反)<<(左移) >>(右移),^(也可以位运算,二进制异或)。

关系:大于、大于等于、小于、小于等于

逻辑:指的是异或、与、或三个逻辑运算符

三目:即三目运算符:条件运算符A > B ? X : Y

赋值:赋值运算符

具体的运算符排序如下:可以看到与我们的口诀不同的是,位运算符(按位与、按位或、按位异或)优先级排在关系运算符的后面。但是>>,<<,>>>等位运算符在关系运算符前面。~(按位取反)优先级很高。

Java面试题26——运算符优先级_第1张图片

这里的结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3±4,则意义为3加-4,符号首先和运算符右侧的内容结合。

你可能感兴趣的:(Java基础面试题)