尚硅谷Java学习第八篇:三元运算符

三元运算符

  1. 结构:(条件表达式)?表达式1 :表达式2

  2. 说明:
    ① 条件表达式的结果为 boolean 类型;
    ②根据条件表达式真或假,决定执行表达式1,还是表达式2
    如果表达式为true,则执行表达式1。
    如果表达式为false,则执行表达式2。
    ③表达式1和表达式2要求是一致的。

  3. 结论:凡是可以使用三元运算符的地方,都可以改写为if-else。反之不成立。

  4. 如果程序即可以使用三元运算符,又可以使用if - else结构,那么优先选择三元运算符。原因:简洁,执行效率高。

eg1 :获取两个整数的较大值

//解法一:
class SanYuanTest{
		public static void main(String[] args){
			int m = 12;
			int n = 5;
			int max = (m > n)? m : n;
			System.out.println("max = " + max);
			}
}
//解法二:
class SanYuanTest{
	public static void main(String[] args){
		int m = 12;
		int n = 5;
		String maxStr = (m > n)? "m大" : (m == n)? "m和n相等" : "n大";//三元运算符可以嵌套使用
		System.out.println(maxStr);
		}
}

eg2 :获取三个整数的较大值

class SanYuanTest{
	public static void main(String[] args){
		int a = 12;
		int b = 5;
		int c = 3;
		int max1 = (a > b) ? a : b;
		int max2 = (max1 > c)? max1 : c;
		// int max2 = (((a > b)? a : b ) > c ) ? ((a > b)? a : b ) : c; 此种方法也可以但是可读性差。不建议这样写
		System.out.println("三个数中的最大值为:" + max2);
		}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值