条件运算符 JAVA
生活随笔
收集整理的這篇文章主要介紹了
条件运算符 JAVA
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
自增自減運算符
1、自增(++)自減(--)運算符是一種特殊的算術運算符,在算術運算符中需要兩個操作數來進行運算,而自增自減運算符是一個操作數。
public class selfAddMinus{public static void main(String[] args){int a = 3;//定義一個變量;int b = ++a;//自增運算int c = 3;int d = --c;//自減運算System.out.println("進行自增運算后的值等于"+b);System.out.println("進行自減運算后的值等于"+d);} }2、前綴自增自減法(++a,--a): 先進行自增或者自減運算,再進行表達式運算。
?
public class selfAddMinus{public static void main(String[] args){int a = 5;//定義一個變量;int b = 5;int x = 2*++a;int y = 2*b++;System.out.println("自增運算符前綴運算后a="+a+",x="+x);System.out.println("自增運算符后綴運算后b="+b+",y="+y);} }3、后綴自增自減法(a++,a--): 先進行表達式運算,再進行自增或者自減運算 實例:
public class Test {public static void main(String[] args) {int a = 10;int b = 20;int c = 25;int d = 25;System.out.println("a + b = " + (a + b) );System.out.println("a - b = " + (a - b) );System.out.println("a * b = " + (a * b) );System.out.println("b / a = " + (b / a) );System.out.println("b % a = " + (b % a) );System.out.println("c % a = " + (c % a) );System.out.println("a++ = " + (a++) );System.out.println("a-- = " + (a--) );// 查看 d++ 與 ++d 的不同System.out.println("d++ = " + (d++) );System.out.println("++d = " + (++d) );} }運行結果
?
關系運算符
下表為Java支持的關系運算符
表格中的實例整數變量A的值為10,變量B的值為20:
| == | 檢查如果兩個操作數的值是否相等,如果相等則條件為真。 | (A == B)為假。 |
| != | 檢查如果兩個操作數的值是否相等,如果值不相等則條件為真。 | (A != B) 為真。 |
| >? | 檢查左操作數的值是否大于右操作數的值,如果是那么條件為真。 | (A> B)為假。 |
| <? | 檢查左操作數的值是否小于右操作數的值,如果是那么條件為真。 | (A <B)為真。 |
| >= | 檢查左操作數的值是否大于或等于右操作數的值,如果是那么條件為真。 | (A> = B)為假。 |
| <= | 檢查左操作數的值是否小于或等于右操作數的值,如果是那么條件為真。 | (A <= B)為真。 |
邏輯運算符
下表列出了邏輯運算符的基本運算,假設布爾變量A為真,變量B為假
| && | 稱為邏輯與運算符。當且僅當兩個操作數都為真,條件才為真。 | (A && B)為假。 |
| | | | 稱為邏輯或操作符。如果任何兩個操作數任何一個為真,條件為真。 | (A | | B)為真。 |
| ! | 稱為邏輯非運算符。用來反轉操作數的邏輯狀態。如果條件為true,則邏輯非運算符將得到false。 | !(A && B)為真。 |
?
public class Test {public static void main(String[] args) {boolean a = true;boolean b = false;System.out.println("a && b = " + (a&&b));System.out.println("a || b = " + (a||b) );System.out.println("!(a && b) = " + !(a && b));} }條件運算符(?:)
條件運算符也被稱為三元運算符。該運算符有3個操作數,并且需要判斷布爾表達式的值。該運算符的主要是決定哪個值應該賦值給變量。
variable x = (expression) ? value if true : value if false實例
Test.java 文件代碼:
public class Test {public static void main(String[] args){int a , b;a = 10;// 如果 a 等于 1 成立,則設置 b 為 20,否則為 30b = (a == 1) ? 20 : 30;System.out.println( "Value of b is : " + b );// 如果 a 等于 10 成立,則設置 b 為 20,否則為 30b = (a == 10) ? 20 : 30;System.out.println( "Value of b is : " + b );} }以上實例編譯運行結果如下:
Java運算符優先級
當多個運算符出現在一個表達式中,誰先誰后呢?這就涉及到運算符的優先級別的問題。在一個多運算符的表達式中,運算符優先級不同會導致最后得出的結果差別甚大。
例如,(1+3)+(3+2)*2,這個表達式如果按加號最優先計算,答案就是 18,如果按照乘號最優先,答案則是 14。
再如,x = 7 + 3 * 2;這里x得到13,而不是20,因為乘法運算符比加法運算符有較高的優先級,所以先計算3 * 2得到6,然后再加7。
下表中具有最高優先級的運算符在的表的最上面,最低優先級的在表的底部。
| 后綴 | () [] . (點操作符) | 左到右 |
| 一元 | expr++ expr-- | 從左到右 |
| 一元 | ++expr --expr + - ~ ! | 從右到左 |
| 乘性? | * /% | 左到右 |
| 加性? | + - | 左到右 |
| 移位? | >> >>> ?<<? | 左到右 |
| 關系? | > >= < <=? | 左到右 |
| 相等? | ==? != | 左到右 |
| 按位與 | & | 左到右 |
| 按位異或 | ^ | 左到右 |
| 按位或 | | | 左到右 |
| 邏輯與 | && | 左到右 |
| 邏輯或 | | | | 左到右 |
| 條件 | ?: | 從右到左 |
| 賦值 | = + = - = * = / =%= >> = << =&= ^ = | = | 從右到左 |
| 逗號 | , | 左到右 |
?
總結
以上是生活随笔為你收集整理的条件运算符 JAVA的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: grub4dos引导Linux失败,Gr
- 下一篇: 用rtl8139网卡制作的bios编程器