day03流程控制语句
一、流程控制
1、概述:
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我
们要完成的功能。
(1)顺序结构
判断语句
语句结构
if
格式
执行流程
当关系表达式为true 时,就会执行{}语句
当关系表达式为false时,就不会执行{}语句.
流程图
代码
if...else
格式
执行流程
如果是 true就执行语句体1
如果是 false就执行语句体2
代码
流程图
if...else if...else
格式
执行流程
哪个关系表达式先为true ,就执行哪个
如果都是false,就是 else 的内容
代码
流程图
if和三元运算
互换事项
1.if...else语句可以和三元运算进行互换
2.多条件的if...语句无法和三元运算互换
代码示例
注意事项
1.变量是有作用域的,定义再哪个{}中,{}就是它的作用范围.
示例代码
2.变量初始化后才能使用.
示例代码
3.建议else 写完整
代码示例
选择语句
switch
格式
执行流程
首先计算出表达式的值
其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。
代码
流程图
注意事项
switch可接受的类型
JDK1.7之前
byte
short
int
char
enum(枚举)
JDK1.7之后
基础类型
byte
short
int
char
enum(枚举)
扩展类型
String
case的穿透性
产生的原因
case 是执行语句的入口, break是终止
没有遇到break的情况,就继续向下运行
代码
穿透的利用
示例
需求:输入一个月份,求出这个月的有多少天
代码示例
循环语句
概述
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句
循环语法
for语句
格式
for各个部分的作用
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环条件所涉及变量的变化情况
执行流程
①②③④ >②③④>②③④…②不满足为止
代码
流程图
while语句
while
格式
while各个部分的作用
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环变量的变化情况
执行流程
①②③④ >②③④>②③④…②不满足为止
代码
流程图
do...while
格式
各个部分的作用
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环变量的变化情况
执行流程
①③④ >②③④>②③④…②不满足为止
代码
流程图
跳出语句
break
使用场景
终止switch或者循环
代码
注意事项
1.在选择结构 switch语句中
2.在循环语句中
3.离开使用场景的存在是没有意义的
continue
使用场景
结束本次循环,继续下一次的循环
代码
注意事项
1.在循环语句中
2.离开使用场景的存在是没有意义的
循环扩展知识点
死循环
概述
死循环的是永不结束的循环
格式
while(true){
}
for(;;){
}
应用场景
例如:我们需要读取用户输入的输入,但是用户输入多少数据我们并 不清楚,也只能使用死循环,当用户不想输入数据了,就可以结束循环了,如何去结束一个死循环呢,就需要使用 到跳出语句了。
嵌套循环
概述
是指一个循环的循环体是另一个循环。比如for循环里面还有一个for循环,就是嵌套循环。总 共的循环次数=外循环次数*内循环次数
格式
for(初始化表达式①; 循环条件②; 步进表达式⑦) {
for(初始化表达式③; 循环条件④; 步进表达式⑥) {
执行语句⑤;
}
}
执行流程
执行顺序:①②③④⑤⑥>④⑤⑥>⑦③④⑤⑥>④⑤⑥ 外循环一次,内循环多次。 比如跳绳:一共跳5组,每组跳10个。5组就是外循环,10个就是内循环。