1、流程控制语句
顺序结构 : 从上到下,从左到右-->默认
选择结构 : 满足条件执行对应的代码
循环结构 : 让一些代码重复不停的执行多
2、选择结构:
if 区间判断|定值判断
switch 定值判断
能用switch的都能if,能用if不一定能够使用switch
3、 if
a. 单选泽|单分支\
if(条件表达式){
满足条件执行的代码段;
}
条件表达式 : 必须为一个值为boolean的表达式
执行流程:
1.计算条件表达式
2.如果结果为true,执行{}中的语句体
3.如果结果为false,就直接跳过if结构
b.双选择|双分支
if(条件表达式){
满足条件执行的代码段;
}else{
不满足条件执行的代码段;
}
注意: 双选择一定能够执行语句体|一定能够得到结果
c.多选择|多分支
if(条件表达式1){
满足条件表达式1执行的语句体1;
}else if(条件表达式2){
满足条件表达式2执行的语句体2;
}else if(条件表达式3){
满足条件表达式3执行的语句体3;
}.....
else{
如果以上都不满足执行得到语句体n;
}
注意: 当{}中的语句体只有一句,前后的{}可以省略
4、switch
能用if的不一定能用switch,能用switch都能使用if
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
....
default:
语句体n;
break;
}
表达式 : 一般为一个变量,可以为一个表达式,常量都可以。
结果数据类型要求: byte,short,int,char,枚举类型,String字符串。
case : 后面接一个定值,拿到表达式的结果与case后面的定值进行判断是否相等,相等执行对应的语句体,不相等,继续向下判断从上到下依次判断。
break : 终止当前的switch语句,如果没有break会发生case穿透 : 从当前满足条件的语句体开始执行,一直向下 穿透,无论下面的case是否满足条件都不再判断,直接执行语句体,直到遇到下一个break或者switch语句的结束而结束
default : 与else相同,以上的case都不满足,name就执行default中的内容,位置可以在switch语句中的任意位置,一般定义在switch语句的最后,如果切换位置,注意break定义。
5、循环结构:让一些重复执行多次
for循环
for(条件初始化;条件判断;条件变化 ){
重复执行的语句体;
}
条件初始化 : 声明一个变量i并且第一次赋值 -->i条件
条件判断 : 对变量的i判断
决定循环是否结束
条件变化|迭代因子 : 变量i自身值的改变
执行顺序:
1.条件初始化 i
2.条件判断,满足执行语句体,不满足条件,结束循环
3.条件变化
从第二次循环开始,重复执行2,3步骤
注意:
for循环的变量条件i只属于当前 for循环,只能在循环中使用
for可以通过条件的变化控制循环的次数,循环体中可以使用条件的值,条件变量可以按照想要的逻辑进行变化,实现需求
考虑: 是否存在一些代码重复执行,如果是,规律可循,可以选择使用循环结构
如果循环体语句只有一句,前后的{}可以省略