Java提供了一個三元運算符,可以同時操作3個表達式。三元運算符語法格式如下:
判斷條件? 表達式1 :表達式2
在上述語法格式中,當判斷條件成立時,計算表達式1的值作為整個表達式的結(jié)果,否則計算表達式2的值作為整個表達式的結(jié)果。
三元運算符的功能與if...else語法相同,但是使用三元運算符可以簡化代碼。例如,求兩個數(shù)x、y中的較大者,如果用if.else語句來實現(xiàn),具體代碼如下:
Int x = 0;
int y = 1;
int max;
if (x > y) {
max=x;
} else {
max = y;
}
System.out.println (max) ;
用三元運算方法的具體代碼如下:
int x = 0;
int y= l;
max= x > y? x : y;
System.out.println (max) ;
兩段代碼的運行結(jié)果都會得到max=1 。
使用三元運算符時需要注意以下幾點:
1. 條件運算符“?”和“:”是一對運算符,不能分開單獨使用。
2. 條件運算符的優(yōu)先級低于關(guān)系運算符和算術(shù)運算符,但高于賦值運算符。
3. 條件運算符可以進行嵌套,結(jié)合方向自右向左。
例如,ab?axc>d?ed應該理解為a>b?a:(exd?ead)這也是條件運算符的嵌套情形,即三元表達式中的表達式2又是一個三元表達式。
(責任編輯:代碼如詩) |