Java大数据开发和安全开发
- (一)Java的流程控制
- 1.1 分支语句
- 1.1.1 IF分支语句
- 第一种IF语句
- 第二种IF-ELSE语句
- 第三种IF-ELSE IF-ELSE语句
- if语句使用的几个常见问题
- 1.1.2 switch分支语句
- switch分支的执行流程
- switch分支的导学案例:电子备忘录
- if、switch的比较,以及各自适合什么业务场景?
- 使用switch分支的几点注意事项
- 循环语句
- (零)java的数组
- 数组的概述
- 静态初始化数组
- 数组的访问
- 数组的遍历
- 数组的练习
- 动态初始化数组
- 数组的访问
- 数组的内存执行原理
(一)Java的流程控制
程序中最经典的三种执行顺序
1.1 分支语句
1.1.1 IF分支语句
- 根据条件(真或假)来决定是否执行某段代码。
- IF分支语句有三种表达方式
第一种IF语句
public class IfDemo {public static void main(String[] args) {// 目标:需要同学们掌握1f分支三种形式的用法和执行流程// 需求:测量用户体温,发现体温高于37度就报警。double t = 36.9;if (t > 37) {System.out.println("这个人的温度异常,把他赶紧带走~~");}}
}
第二种IF-ELSE语句
public class IfDemo {public static void main(String[] args) {// 需求2:发红包,你的钱包余额是99元,现在要发出90元// 如果钱够触发发红包的动作,如果钱不够,则提示:余额不足。double money = 19;if (money >= 90) {System.out.println("发红包成功了~");} else {System.out.println("余额不足~~");}}
}
第三种IF-ELSE IF-ELSE语句
public class IfDemo {public static void main(String[] args) {//需求3:某个公司有一个绩效系统,根据员工的打分输出对应的绩效级别。[0,60)D [60,80)C[80,90)B[90,100]Adouble KPI=800;if (KPI >= 90 && KPI <= 100){System.out.println("绩效为A");} else if (KPI >= 80 && KPI < 90) {System.out.println("绩效为B");} else if (KPI >= 60 && KPI < 80) {System.out.println("绩效为C");} else if (KPI >= 0 && KPI < 60) {System.out.println("绩效为D");} else {System.out.println("输入有误!");}}
}
if语句使用的几个常见问题
- if(条件){} ,()后不能跟“;”否则{}中的代码将不受if的控制了
- 如果if语句的0中只有一行代码的情况,(}可以省略不写(但是不推荐省略)
1.1.2 switch分支语句
- 是通过比较值来决定执行哪条分支
switch分支的执行流程
①先执行表达式的值,再拿着这个值去与case后的值进行匹配。
②与哪个case后的值匹配为true就执行哪个case块的代码,遇到break就跳出switch分支。
③如果全部case后的值与之匹配都是false,则执行default块的代码,
switch分支的导学案例:电子备忘录
- 周一:埋头苦干,解决bug
- 周二:请求大牛程序员帮忙
- 周三:今晚啤酒、龙虾、小烧烤
- 周四:主动帮助新来的女程序解决bug
- 周五:今晚吃鸡
- 周六:与王婆介绍的小芳相亲
- 周日:郁郁寡欢、准备上班
/**目标:掌握switch的写法,理解其执行流程*/
public class SwitchDemo {public static void main(String[] args) {
/* - 周一:埋头苦干,解决bug- 周二:请求大牛程序员帮忙- 周三:今晚啤酒、龙虾、小烧烤- 周四:主动帮助新来的女程序解决bug- 周五:今晚吃鸡- 周六:与王婆介绍的小芳相亲- 周日:郁郁寡欢、准备上班
*/String week ="周三";switch(week) {case "周一":System.out.println("埋头苦干,解决bug");break;case "周二":System.out.println("请求大牛程序员帮忙");break;case "周三":System.out.println("今晚酒、龙虾、小烧烤");break;case "周四":System.out.println("主动帮助新来的女程序解决bug");break;case "周五":System.out.println("今晚吃鸡");break;case "周六":System.out.println("与王婆介绍的小芳相亲");break;case "周日":System.out.println("郁郁寡欢、准备上班");break;default:System.out.println("您输入的星期信息肯定是不存在的~~");}}
}
if、switch的比较,以及各自适合什么业务场景?
- if在功能上远远强大于switch。
- 当前条件是区间的时候,应该使用if分支结构,
- 当条件是与一个一个的值比较的时候,switch分支更合适:格式良好,性能较好,代码优雅。
使用switch分支的几点注意事项
- 表达式类型只能是byte、short、int、char,JDK5开始支持枚举,JDK7开始支持String.1)
不支持double、float、long。 - case给出的值不允许重复,且只能是字面量,不能是变量。
- 正常使用switch的时候,不要忘记写break,否则会出现穿透现象