- 流程控制概述
- 一、if 判断语句
- if语句第一种格式
- if语句第二种格式
- if语句第三种格式
- 练习
- 二、switch选择语句
- switch语句的格式
- 注意事项
- 练习
- 三、for循环语句
- for语句格式
- 练习
- 四、while循环语句
- while语句格式
- 练习
- 五、do...while循环语句
- do...while语句格式
- 六、循环语句的区别
- 扩展格式的区别(了解)
- 七、控制语句
- 流程控制语句的注意事项
不论哪一种编程语言,都会提供两种基本的流程控制结构:分支结构和循环结构。其中分支结构用于实
现根据条件来选择性地执行某段代码,循环结构则用于实现根据循环条件重复执行某段代码。Java同样
提供了这两种流程控制结构的语法,Java提供了if和switch两种分支语句,并提供了for,while,
do…while三种循环语句。除此之外,JDK5.0还提供了一种新的循环:foreach循环,能以更简单的方式
来遍历集合、数组的元素。Java还提供了 break 和 continue语句来控制程序的循环结构。
一、if 判断语句 if语句第一种格式
if (条件判断语句){
语句体;
}
执行流程:
1.首先先看条件判断语句的结果是true还是false;
2.如果是true, 则执行语句体, 然后if语句结束;
如果是false, 则if语句直接结束;
if语句第二种格式
if (条件判断语句){
语句体1;
} else {
语句体2;
}
执行流程:
1.首先先看条件判断语句的结果是true还是false;
2.如果是true, 则执行语句体1, 然后if语句结束;
如果是false, 则执行语句体2, 然后if语句结束;
if语句第三种格式
if (条件判断语句1){
语句体1;
} else if(条件判断语句2){
语句体2;
}
......
else if(条件判断语句n){
语句体n;
} else {
语句体n+1;
}
执行流程:
1.首先先看条件判断语句1的结果是true还是false;
2.如果是true, 则执行语句体1, 然后if语句结束;
如果是false, 则看条件判断语句2的结果是true还是false;
...
3.当所有条件判断语句都是false时,执行else语句中的语句体n+1;
练习
一、根据指定整数x的值,计算整数y的值
x和y的关系满足如下:
x>=3 y = 2x + 1;
-1
二、switch选择语句
switch语句的格式
switch(数据值){
case 数据值1:
语句体1;
break;
case 数据值2:
语句体2;
break;
......
case 数据值n;
语句体n;
break;
default:
语句体n+1;
break;
}
执行流程:
1.先确定switch语句()中的数据值是多少;
2.将数据值和数据值1进行匹配,看是否匹配成功;
3.如果匹配成功,执行语句体1,执行break语句,switch结束;
如果匹配失败,将数据值和数据值2进行匹配,看是否匹配成功;
......
4.当数据值和所有case后的数据值都没有匹配成功,执行default中语句体n+1,执行break语句,
switch结束;
注意事项
switch语句的()中数据值的数据类型只能是 四种基本数据类型 和 两种引用数据类型 。
四种基本数据类型:byte,short,char,int
两种引用数据类型:
在JDK5.0(包含)之后,支持枚举类型enum
在JDK7.0(包含)之后,支持字符串类型String
switch语句中的default语句和if语句第三种格式中的else语句一样,都可以省略不写,但推荐写上
switch语句中的case语句和default语句的位置可以随意调换,且不影响执行流程
switch语句中的break关键字可以省略不写,但如果省略不写会出现case穿透的效果
练习
根据指定的月份输出对应季节(使用if语句和switch语句实现)
三、for循环语句
for语句格式
for(初始化数据; 循环条件语句; 迭代语句){
循环语句体;
}
执行流程:
1.首先执行初始化数据;
2.看循环条件语句结果是true还是false;
3.若是true, 则执行循环语句体, 继续执行;
若是false, 则结束循环;
4.执行迭代语句;
5.跳回第2步, 继续执行;
练习
一、练习:利用for语句打印1-5和5-1
二、练习:求出1-5之间数据之和
三、练习:求出1-100之间偶数和
四、练习:打印所有的水仙花数
分析:
什么是水仙花数呢?
所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数。
153 = 1*1*1 + 5*5*5 + 3*3*3
五、练习:打印所有的水仙花数共有多少个
六、练习:打印符合要求的数字
分析以下需求,并用代码实现:
(1)打印出四位数字中个位+百位=十位+千位并且个位数为偶数,千位数为奇数的数字,并打印符合条件的数字的个数
(2)符合条件的数字,每行显示5个,用空格隔开,打印格式如下:
1012 1034 1056 1078 1100
1122 1144 1166 1188 1210
//......
符合条件的数字总共有: 165个
四、while循环语句
while语句格式
while(循环条件语句){
循环体语句;
}
执行流程
1.首先判断循环条件语句结果是true还是false;
2.如果是true, 则执行循环语句体, 继续执行;
如果是false, 则while语句结束循环;
3.跳回第1步, 继续执行;
练习
练习:趣味折纸
题目:
世界最高山峰是珠穆朗玛峰,它的高度是8848.86米,假如我有一张足够大的纸,它的厚度是0.1毫米。
请问,折叠多少次,不低于珠穆朗玛峰的高度?
五、do…while循环语句
do…while语句格式
do{
循环体语句;
} while(循环条件语句);
执行流程:
1.首先执行循环体语句;
2.看循环条件语句结果是true还是false;
3.如果是true, 跳回第一步;
若是false, do...while循环结束;
六、循环语句的区别
扩展格式的区别(了解)
● 从循环次数角度分析
○ do...while循环至少执行一次循环体语句
○ for和while循环先循环条件语句是否成立, 然后决定是否执行循环体, 至少执行零次循环体语句
● 从循环遍历的生命周期分析
○ for循环的环境变量, 在循环语句结束后, 不可以被访问;
○ while和do...while循环的循环变量, 是可以被继续使用的;
● 三种循环的区别
1.判断和循环的先后顺序
for语句和while语句先判断,后循环
dowhile语句先循环,后判断
2.当循环条件语句结果为false时,循环体语句至少执行次数
for语句和while语句至少执行零次
do...while语句至少执行一次
3.实际开发中选择:
有明显的循环次数(范围),选择for语句
没有明显的循环次数(范围),选择while语句
不会选择dowhile语句
七、控制语句
break:
● 使用场景: 终止switch或者循环
continue:
● 使用场景: 结束本次循环, 继续下一次的循环
return:
● (暂不涉及)
注意事项:
● 在同一个作用域中, 控制语句的后面不能编写其它代码, 否则编译报错, 因为永远无法执行
流程控制语句的注意事项
当流程控制语句{}中有且仅有一行代码时,{}可以省略不写,建议写上



