Java 運算符優先級

https://java-er.com/blog/priority-java-operation/java

Java 的運算符優先級
算術運算符優先級較高,關係和邏輯運算符優先級較低。
多數運算符具備左結合性,單目運算符、三目運算符、賦值運算符具備右結合性。編程

類別 操做符 關聯性
後綴 () [] . (點操做符) 左到右
一元 !、+、-、~、++、– 從右到左
乘性  、/、% 左到右
加性  + – 左到右
移位  >> >>>  <<  左到右
關係  <、<=、>、>=、instanceof 左到右
相等  ==  != 左到右
按位與 & 左到右
按位異或 ^ 左到右
按位或 | 左到右
邏輯與 && 左到右
邏輯或 || 左到右
條件 ?: 從右到左
賦值 =、+=、-=、
=、/=、&=、|=、^=、~=、«=、»=、>>>= 從右到左
逗號 , 左到右
舉個例子
(a+b*c)/5
這個例子很簡單就是個數學公式ide

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

  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) )
是否是容易看多了。get

當沒法肯定優先級的時候,能夠用()來強行改變優先級數學

在實際的java編程中,建議適當使用()來讓程序容易讀一些,並非每一個人須要強行記住那麼多優先級判斷it

相關文章
相關標籤/搜索