三元运算符
1、元:可以操作的数据或者表达式
2、三元运算符:同时可以操作三个数据或者表达式的运算符
3、格式:表达式1 ? 表达式2 : 表达式3
4、说明:
表达式1必须是boolean类型的表达式,计算的结果只能是true、或者false
表达式2和表达式3可以是任意类型的表达式
5、运算流程:
计算表达式1的值,要么为true、要么为false
如果表达式1计算结果为true,就选择表达式2作为三元表达式的计算结果
如果表达式1计算结果为false,就选择表达式3作为三元表达式的计算结果
举例:
//获取两个数中的较大值
int a = 10;
int b = 20;
System.out.println(a > b ? a : b);
// 获取四个数中的较大值
int a = 10;
int b = 20;
int c = 30;
int d = 40;
//获取ab的较大值
int maxab = a > b ? a : b;
//获取cd的较大值
int maxcd = c > d ? c : d;
//两个较大值相比
int max = maxab > maxcd ? maxab : maxcd;
System.out.println(max);
int maxabcd = (a > b ? a : b) > (c > d ? c : d) ? (a > b ? a : b) : (c > d ? c : d);
System.out.println(maxabcd);
//录入三个数,输出最大值
Scanner sc = new Scanner(System.in);
System.out.println("请输入三个数:");
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
int max = a > b ? (a > c ? a : c) : (b > c ? b : c);
System.err.println("最大值为:" + max);