一 定义
三元运算符,也叫三目运算符,在二选一的场景下,调用数据时逐级筛选.类似if...else...
1>其语法格式
变量 = boolean表达式 ? 结果A : 结果B
从上面的表达式可以看出两个关键点
1)等式右边,三个元素(操作数)组成
2)等式左边,需要变量赋值接受结果
2>其语义
1)如果布尔表达式为true,结果取结果A
2)如果布尔表达式为false,结果取结果B
3>注意
结果A和结果B的数据类型必须相同
二 实操
1>判断一个数87是不是偶数
public class TestDemo {
public static void main(String[] args) {
// 需求1>判断一个数87是不是偶数
// 声明变量
int a = 87;
// 三元,通过对a取模,有余数即为奇数 反之
String flag = a % 2 == 0 ? "偶数" : "奇数";
// 打印结果
System.out.println(flag);
}
}
2>求两个数中的最大值(最小值)
public class TestDemo {
public static void main(String[] args) {
// 需求2>判断两个数的最大值(最小值)
// 声明变量
int x = 666;
int y = 777;
// 三元
int flag2 = x >= y ? x : y;
// 打印结果
System.out.println("最大值为" + flag2);
}
}
三 实战
需求3>一个excel文件 包含87条数据,每页8条数据,一共需要分多少页
分析一下需求 两种情况 整除和不能整除
1)整除情况-->总条数/每页条数 = 页数
2)不能整除情况-->总条数/每页条数 = 页数 + 1
public class TestDemo {
public static void main(String[] args) {
// 需求3>总条数87条 每页8条 问分成多少页
// 声明变量
// 1)总条数
int totalCount = 87;
// 2)每页条数
int pageSize = 8;
// 3)分成多少页
int page;
// 三元运算
page = totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1;
// 打印结果
System.out.println("一共分成:" + page + "页");
}
}