目录
前言
流程控制语句的学习注意语法格式,执行流程,注意事项以及多练题即可。
1.顺序结构
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。自此结束下一个。
2.分支结构
2.1 if语句
语法格式1
if(布尔表达式){
//语句块
}
如果布尔表达式返回值为true则执行语句块,否则跳过。
语句格式2
if(布尔表达式){
//语句块1
}else{
//语句块2
}
如果布尔表达式返回值为true则执行语句块1,返回值·为false则执行语句块2。
语法格式3
if(布尔表达式1){
//语句1
}else if(布尔表达式2){
//语句2
}else{
//语句3
}
表达式
1
成立,执行语句
1
,不成立判断表达式2,成立则执行语句2,不成立则执行语句3
注意事项
- 代码风格:{ 放在if/else同一行
- 分号问题:if语句后面接分号不会报错,可以正常运行,写代码时仔细点
- 悬垂else:不加大括号else与最近的if匹配,不管几条语句都加
int x = 10;
int y = 10;
if (x == 10)
if (y == 10)
System.out.println("aaa");
else
System.out.println("bbb");
2.2 switch 语句
语法格式
switch (表达式) {
case 1:
语句体1;
break;
case 2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
执行流程:
1.
先计算表达式的值
2.
和
case
依次比较,一旦有响应的匹配就执行该项下的语句,直到遇到
break
时结束
3. 当表达式的值没有与所列项匹配时,执行default
注意事项
-
多个 case 后的常量值不可以重复
-
switch的括号内只能是byte、char、short、int,String常量串、枚举类型,不能是long
- default可以放在任意位置,也可以省略
-
不写break会引发case穿透现象
3. 循环结构
3.1 for循环
语法格式
for(表达式A;布尔表达式B;表达式C){
表达式D;
}
执行流程:ABCD—>BCD—>BCD—>……—>B为false,循环结束。
解释:
表达式A: 用于初始化循环变量初始值设置,在循环最开始时执行,且只执行一次
表达式B: 循环条件,满则循环继续,否则循环结束
表达式C: 循环变量更新方式
注意事项:
- 每条for语句都加上{ }
- for后面的 { 保持同行
- 注意不能有分号,不会报错,检查恶心
- continue时跳过本次循环,break是跳出整个循环
3.2 while 循环
语法格式:
while(循环条件){
循环语句;
}
执行流程:循环条件为 true, 则执行循环语句; 否则结束循环。
注意事项:老调常谈,和 if 类似就那几点。
3.3 do-while循环
语法格式:
do{
循环语句;
}while(循环条件);
执行流程:先执行循环语句, 再判定循环条件,循环条件成立则继续执行,否则循环结束。
注意事项:
- do-while后面的分号不能忘记。