java:4-6三元运算符

本文详细介绍了Java中的三元运算符,包括其运算规则、示例演示、数据类型要求以及如何转换表达式。通过实例展示如何在编程中使用三元运算符求最大值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 三元运算符ternary operators

1.1 运算规则:

条件表达式 ? 表达式 1: 表达式 2;

  1. 如果条件表达式为 true,运算后的结果是表达式 1;
  2. 如果条件表达式为 false,运算后的结果是表达式 2;
  3. 口诀: [一真大师]如果为真,返回1。

1.2 案例演示

public class var01 {

	//编写一个main方法
	public static void main(String[] args) {
		//例1
		int a = 10;
		int b = 99;
		//解读思路:a>b为假
		//返回b--:先返回b,再对b做--
		//返回b(99)。同时b改变=98.
		int result = a > b ? a++ : b--;

		//例2
		int a = 10;
		int b = 99;
		int result = a < b ? a++ : b--;
		System.out.println("result=" + result); // 10
		System.out.println("a=" + a); //11
		System.out.println("b=" + b); //99
		}
	}
} 

1.3 使用细节

  1. 表达式1和表达式2数据类型必须是可赋给接收变量的类型(或可以自动转换)
  2. 三元运算符可以转成if–else语句
  3. 演示:
public class turnary {

	//编写一个main方法
	public static void main(String[] args) {
		//细节演示
		int a = 3;
		int b = 8;
		int c = a > b ? a : b;//可以通过
		int d = a > b ? 1.1 : 1.3; //不通过,不能把1.1double赋值给d int。
		int d = a > b ? (int)1.1 : (int)1.3;//可以
		double d = a > b ? a : b + 3;//可以的,满足 int->double
		}
	}
} 

1.4 练习

public class TernaryOperatorExercise {

	//编写一个 main 方法
	public static void main(String[] args) {
		//案例:求三个数的最大值 
		int n1 = 553;
		int n2 = 33;
		int n3 = 123;
		//思路
		//1. 先得到 n1 和 n2 中最大数 , 保存到 max1
		//2. 然后再 求出 max1 和 n3 中的最大数,保存到 max2
	
		int max1 = n1 > n2 ? n1 : n2;
		int max2 = max1 > n3 ? max1 : n3; 
		System.out.println("最大数=" + max2); //输出553
	
		//使用一条语句实现, 推荐使用上面方法 
		//老师提示: 后面我们可以使用更好方法,比如排序 
		//int max = (n1 > n2 ? n1 : n2) > n3 ? (n1 > n2 ? n1 : n2) : n3;
		//System.out.println("最大数=" + max);
	
	} 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值