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]A
double 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,否则会出现穿透现象