流程控制
顺序结构
分支结构
选择结构
循环结构
一,分支结构
关键字:if、else
1.1 单 if 结构
格式:
1
2
3 if(条件表达式){
语句
}逻辑:判断条件表达式的结果,结果为true,执行代码块中的语句;反之,不执行
1.2 标准的 if - else 结构
格式:
1
2
3
4
5 if(条件表达式){
语句1
}else{
语句2
}逻辑:判断条件表达式的结果,结果为true,执行if代码块中的语句1;反之,执行else代码块中的语句2
1.3 多条件的 if - else 结构
格式:
1
2
3
4
5
6
7
8 if(条件1){
语句1
}else if(条件2){
语句2
}else if(条件3){
语句3
}
...逻辑:依次判断每一个条件表达式,一旦有一个条件表达式的结果为true时,执行对应的代码块,其他条件表达式不再判断
格式:
1
2
3
4
5
6
7
8
9 if(条件1){
语句1
}else if(条件2){
语句2
}else if(条件3){
语句3
}else{
语句n
}逻辑:依次判断每一个条件表达式,一旦有一个条件表达式的结果为true时,执行对应的代码块,其他条件表达式不再判断;如果没有任何一个if条件为true,则执行最后的else中的语句n
1.4 if - else的嵌套
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 >// 老年[65,] 中年[30,65) 青年 [18,30) 未成年[0,18)
>Scanner sc = new Scanner(System.in);
>System.out.println("请输入您的年龄:");
>int age = sc.nextInt();
>if(age >= 0 && age <= 150){
if(age >= 65){
System.out.println("老年");
}else if(age >= 30){
System.out.println("中年");
}else if(age >= 18){
System.out.println("青年");
}else{
System.out.println("未成年");
}
>}else{
System.out.println("非法数据");
>}
1.5 注意事项
- else不能单独使用
- 在if-else的嵌套使用中,只有满足了外层的条件,才能进入内层
- 如果if或者else所对应的代码块中只有一条语句,那么大括号可以省略
二,选择结构
关键字:switch、case、break、default
格式:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 switch(表达式){
case 值1:
语句1;
break;
case 值2:
语句2;
break;
case 值3:
语句3;
break;
...
default:
语句n;
break;
}逻辑:将表达式的结果与case后的值进行比较,当某一个case后的值与表达式的结果相同时,执行该case后的语句;如果没有任何一个case后的值与表达式的结果相同,则执行defalut后的语句n
注:
- 每一个case后的值必须是唯一的
- 表达式结果的类型只能是:byte、short、int、char、String
- case后值的类型必须与表达式结果的类型一致
- default不是必需的
- case和default的位置顺序是任意的
break 关键字:break在switch-case结构中用于跳出整个结构,如果删除了break,那么程序会继续向下执行,直到遇到下一个break或者switch-case结束。
三,循环结构
循环必须具备的4个要素
- 条件
- 循环体
- 初始化值
- 步进表达式
3.1 while 循环
格式:
1
2
3 while(条件){
循环体
}逻辑:判断条件的结果,结果为true,执行循环体,继续判断条件,当条件为false时,结束循环
3.2 do-while 循环
格式:
1
2
3 do{
循环体
}while(条件);逻辑:先执行一次循环体,再判断条件,如果为true,执行循环体,再次判断条件,直到条件的结果为false,结束循环。
特点:至少执行一次循环体
3.3 for 循环
格式:
1
2
3 for(初始化值①;条件②;步进表达式③){
循环体④
}执行循环:1 2 4 3 2 4 3 2 …. 2
3.4 break 和 continue
break:在switch-case和循环中,都用于结束整个结构
continue:只能用在循环中,用于跳过当前这趟循环,继续后续的循环
3.5 死循环
概念:在编程中,一个靠自身控制无法终止的程序称为死循环,也叫无限循环
格式:
1
2
3
4
5
6
7
8
9
10
11
12
13 while(true){
循环体
}
do{
循环体
}while(true);
for(;;){
}
3.6 循环嵌套
概念:一个循环嵌套另一个循环;一个循环是另一个循环的循环体