小编提供了一个三元运算符,可以同时操作3个表达式。三元运算符语法格式如下:
判断条件? 表达式1 :表达式2
在上述语法格式中,当判断条件成立时,计算表达式1的值作为整个表达式的结果,否则计算表达式2的值作为整个表达式的结果。
三元运算符的功能与if…else语法相同,但是使用三元运算符可以简化代码。例如,求两个数x、y中的较大者,如果用if.else语句来实现,具体代码如下:
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) ;
两段代码的运行结果都会得到max=1 。
使用三元运算符时需要注意以下几点:
1. 条件运算符“?”和“:”是一对运算符,不能分开单独使用。
2. 条件运算符的优先级低于关系运算符和算术运算符,但高于赋值运算符。
3. 条件运算符可以进行嵌套,结合方向自右向左。
例如,ab?axc>d?ed应该理解为a>b?a:(exd?ead)这也是条件运算符的嵌套情形,即三元表达式中的表达式2又是一个三元表达式。