三元运算符

三元运算符

(条件表达式)?表达式1: 表达式2
说明:
①条件表达式的结果为boolean类型
②根据表达式真或假,决定执行表达式1,还是表达式2,
如果表达式为ture,则执行表达式1:
false,则为表的式2,
③表达式1 与 表达式2要求是一致的。
④三元运算符可以嵌套使用
如果程序即可使用三元也可使用if-else 优先选择三元运算符
原因:简洁、执行效率高

结论:凡是可以使用三元运算符可以改写成if-else:
能用if-else不一定能用三元运算。

例子:

//获取两个整数的较大值

int m = 12int n = 5int  max=(m > n)? m : n; //  如果(m>n)是真,则把m付给max   如果(m>n)是假,则把n付给max 
System,out,println(max);//输出12

double num = (m>n)?21.0//因为1.0带小数点所以要用double,
 如果(m>n)? 2:"n大"//这是错误的,因为"n大"是字符串,需要用String接收。2需要用int接收。

String maxStr = (m > n)? "m大""n大"//
System,out,println(maxStr);//输出:m大

//获取三个数的最大值

int n1 = 12int n2 = 30int n3 = -43int max1 = (n1 > n2)? n1 : n2;
System,out,println(max1);//输出:30.则n2大
int max2 =(max1 > n3)?max1:n3;
System,out,println("三个数中的最大值为"max2);//输出:30.则n2大
//把三个数放在一块
int max3 =(((n1 > n2)? n1 : n2)> n3)?((n1 > n2)? n1 : n2):n3;//不建议这样写
System,out,println("三个数中的最大值为"max3);//输出:30.则n2大

//可以改写成if-else:
if (m > n){
	System.out.println(m);
}else{
	System.out.println(n);
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值