https:///blog/priority-java-operation/ Java 的運(yùn)算符優(yōu)先級 算術(shù)運(yùn)算符優(yōu)先級較高,關(guān)系和邏輯運(yùn)算符優(yōu)先級較低。 多數(shù)運(yùn)算符具有左結(jié)合性,單目運(yùn)算符、三目運(yùn)算符、賦值運(yùn)算符具有右結(jié)合性。 類別 | 操作符 | 關(guān)聯(lián)性 |
---|
后綴 | () [] . (點(diǎn)操作符) | 左到右 | 一元 | !、+、-、~、++、– | 從右到左 | 乘性 | *、/、% | 左到右 | 加性 | + – | 左到右 | 移位 | >> >>> << | 左到右 | 關(guān)系 | <、<=、>、>=、instanceof | 左到右 | 相等 | == != | 左到右 | 按位與 | & | 左到右 | 按位異或 | ^ | 左到右 | 按位或 | | | 左到右 | 邏輯與 | && | 左到右 | 邏輯或 | || | 左到右 | 條件 | ?: | 從右到左 | 賦值 | =、+=、-=、*=、/=、&=、|=、^=、~=、?=、?=、>>>= | 從右到左 | 逗號 | , | 左到右 |
舉個例子 (a+b*c)/5 這個例子很簡單就是個數(shù)學(xué)公式 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 聯(lián)合判斷 如果修改下 if( (a+5 == 10) || (b==1 && c==0) ) 是不是容易看多了。 當(dāng)無法確定優(yōu)先級的時候,可以用()來強(qiáng)行改變優(yōu)先級 在實(shí)際的java編程中,建議適當(dāng)使用()來讓程序容易讀一些,并不是每個人需要強(qiáng)行記住那么多優(yōu)先級判斷
|