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

故事扮演 提交于 2020-01-11 08:48:36

运算符优先级

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

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

口诀解释:

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

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

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

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

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

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

赋值:赋值运算符

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

img

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!