一、基本语法
语法:条件表达式?表达式1:表达式2;
运算规则:
1、如果条件表达式为true,运算后的结果是表达式1;
2、如果条件表达式为false,运算后的结果是表达式2;
二、案例演示
int a = 99;
int b = 10;
int result = a > b ? a++ : b--; //表达式1 先赋值后自增
System.out.println(result);//输出99
System.out.println("a = " + a);//输出 100
System.out.println("b = " + b);//输出10
三、三元运算符细节
int a = 3;
int b = 8;
int c = a > b? 2.2 : 3.3;//改为 int c = a > b?(int) 2.2 : (int)3.3;
System.out.println(c);
double d = a > b ? a : b + 3;//满足 int --> double
##表达式1和表达式2要为可以赋给接受变量的类型(或可以自动转换)
##三元运算符可以转成 if--else 语句
int a = 3;
int b = 8;
int c = a > b? 2 : 4;
System.out.println(c);
if (a > b){
System.out.println("2");
}else{
System.out.println("4");
}
四、案例:实现三个数的最大值
int a = 56;
int b = 122;
int c = 100;
int max1 = a > b ? a : b;
int max2 = max1 > c ? max1 : c;//推荐使用第一种
// int max = (a > b? a : b) > c ?
// (a > b? a : b):c;
System.out.println(max2);
更多推荐
Java_三元运算符
发布评论