04-流程控制
流程控制的作用:
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块
控制语句的分类:
1.顺序结构:先执行a,再执行b
2.条件判断结构(分支结构):如果...,则...
3.循环结构:如果...,则再继续...
一、if 单分支
1.语法结构:
if (布尔表达式) {
语句块
}
2.if 语句对布尔表达式进行一次判定,若判定为真,则执行{}中的语句块,否则跳过该语句块。
3.{} 中的代码是否执行,取决于()中表达式的返回结果。
4.if后面的()中的条件,要按照自己的需求尽量完善。{} 可以省略不写,但是一旦省略,这个if 就只负责后面紧接着的一句话,不建议省略
二、if 多分支
1.语法结构:
if(布尔表达式){
语句块;
}else if(布尔表达式){
语句块;
}...
else{
语句块;
}
2.else隐藏了一个条件,跟上面分支条件表达式相反的功能。
3.多分支:好处,只要满足一个分支以后,后面的分支就不需要判断了,效率高。
4.写代码的时候,尽量保证else的存在,else分支相当于“兜底”、“备胎”的作用,别的分支都不走,就会走这个分支。
三、if 双分支
1.语法结构:
if (布尔表达式) {
语句块;
} else{
语句块;
}
2.等价于三目运算:
布尔表达式 ? 语句块 : 语句块
四、wtitch 分支
1.语法结构:
switch(){
case 值1 :
语句序列1;
break;
case 值2 :
语句序列2;
break;
...
default :
默认语句;
}
2.switch后面是一个(),()中表达式返回的结果是一个等值,这个等值的类型可以为:
int、byte、short、char、String、枚举类型
3.这个()中的等值会依次跟case后面的值进行比较,如果匹配成功,就执行:后面的代码
4.为了防止代码的“穿透效果”:在每个分支后面加上一个关键词break,遇到break,这个分支就结束了
5.类似else的“兜底”“备胎”的分支:default分支
6.default分支可以写在任意的位置上,但是如果没有在最后一行,后面必须加上break关键字,如果在最后一行的话,break可以省略
7.相邻的分支逻辑是一样的,那么就可以只保留最后一个分支,上面的都可以省略不写
五、while 循环
1.语法结构:
while(布尔表达式){
循环体;
}
1.循环的作用:将部分代码重复执行。
循环只是提高了程序员编写代码的效率,但是底层执行的时候依然是重复执行
2.循环的四要素:
条件初始化、条件判断、循环体、迭代
初始化谁,就判断谁,判断谁,就迭代谁
六、do-while 循环
1.语法结构:
do{
循环体;
} while(布尔表达式);
2.while和do-while的区别:
while:先判断,再执行
do-while:先执行,再判断。至少被执行一次,从第二次开始才进行判断
七、for 循环
1.语法结构:
for(条件初始化;条件判断;迭代){
循环体;
}
2. i 的作用域:
作用范围,离变量最近
3. for 循环格式特别灵活,但是写代码的时候不建议灵活着写
4.循环分为两大类:
第一类:当型,while(true){}、for( ; ; ){}
第二类:直到型,do{} while(true)
5.常用的是for循环,但是这几个循环在底层的执行效率是一样的,都是执行循环体代码
八、关键字
break:在任何循环语句的主体部分,均可用break控制循环的流程。break用于强制退出循环,不执行循环中剩余的语句。
continue:用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
return:结束当前所在方法的执行。跟循环无关,就是程序中遇到return,那么return所在的那个方法就停止执行了。

浙公网安备 33010602011771号