三元运算符:
格式:条件表达式 ? 值1 : 值2 ;
执行流程:首先计算表达式的值,如果为true,返回值1,如果为false,返回值2.
目标
学会使用三元运算符, 理解其流程`
import java.util.Scanner;
public class OperatorDemo8 {
public static void main(String[] args) {
// 目标: 学会使用三元运算符, 理解其流程
double score = 18;
String rs = score >= 60 ? "考试通过" : "挂科";
System.out.println(rs);
//需求:需要从两个数中找出较大值
int x = 10;
int y = 2000;
int rsmax = x > y ? x : y;
System.out.println(rsmax);
//判断两只老虎的体重是否相同
int weight1 = 180;
int weight2 = 200;
String weight = weight1 == weight2 ? "相同" : "不相同";
System.out.println("这两只老虎的体重" + weight);
//通过三元运算符实现三个和尚的身高问题
int hesang1 = 150;
int hesang2 = 210;
int hesang3 = 165;
int midhesang = hesang1 >= hesang2 ? hesang1 : hesang2;//先比较前两个和尚的身高
int maxheight = midhesang >= hesang3 ? midhesang : hesang3;//和第三个和尚比较身高
System.out.println("最高的和尚的身高是" + maxheight);
//输入三个树的最大值,用三元运算符找出最大值
Scanner sc = new Scanner(System.in);
System.out.println("请输入三个数,空格分开,回车结束\n");
double a = sc.nextDouble();
double b = sc.nextDouble();
double c = sc.nextDouble();
double mid = a >= b ? a : b;
//double max = c >= mid ? c : mid;
System.out.println("--------扩展方法----------");
System.out.println("三元运算符的嵌套方法");
System.out.println("double max = a > b ? a > c ? a : c : b > c ? b : c;");
System.out.println("double max = a > b ? (a > c ? a : c) : (b > c ? b : c);");
double max = a > b ? a > c ? a : c : b > c ? b : c;
System.out.println("三个数中最大的是" + max);
}
}