Java运算符的优先级以及改变运算符优先级的方法

Java 的运算符优先级

创新互联是一家专业提供庆安企业网站建设,专注与网站设计制作、做网站、H5建站、小程序制作等业务。10年已为庆安众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

算术运算符优先级较高,关系和逻辑运算符优先级较低。
多数运算符具有左结合性,单目运算符、三目运算符、赋值运算符具有右结合性。

类别  操作符 关联性
后缀  () [] . (点操作符)  左到右
一元  !、+、-、~、++、–    从右到左
乘性  、/、%   左到右
加性  + – 左到右
移位  >> >>>  <<  左到右
关系  <、<=、>、>=、instanceof    左到右
相等  ==  !=  左到右
按位与 &   左到右
按位异或    ^   左到右
按位或 |   左到右
逻辑与 &&  左到右
逻辑或 ||  左到右
条件  ?:  从右到左
赋值  =、+=、-=、
=、/=、&=、|=、^=、~=、«=、»=、>>>=    从右到左
逗号  ,   左到右
举个例子
(a+b*c)/5
这个例子很简单就是个数学公式

int a = 5;int b = 2;int c = 3;
if(a+5==10 || b==1 && c==0){
System.out.println(true);
}
这个判断的意思是

  1. 条件1 a+5 == 10
  2. 条件2 b==1
  3. 条件3 c==0
  4. 判断条件2和3 形成条件4
  5. 条件4 和条件1 联合判断
    如果修改下

if( (a+5 == 10) || (b==1 && c==0) )
是不是容易看多了。

当无法确定优先级的时候,可以用()来强行改变优先级

在实际的java编程中,建议适当使用()来让程序容易读一些,并不是每个人需要强行记住那么多优先级判断


分享题目:Java运算符的优先级以及改变运算符优先级的方法
URL分享:http://myzitong.com/article/gdsdee.html