内容摘要:
格式1:
if(关系表达式){
语句体;
}
执行流程:
A:首先判断关系表达式的值
B:如果结果为true,则执行语句体
C:如果结果为false,则不执行语句体
格式2:
if(关系表达式) {
语句体1;
}else {
语句体2;
}
执行流程:
A:首先判断关系表达式的值
B:如果结果为true,则执行语句体1
C:如果结果为false,则执行语句体2
格式3:
if(关系表达式1){
语句体1;
}else if(关系表达式2) {
语句体2;
}else if(关系表达式2) {
语句体2;
}
...
else {
语句体n+1;
}
执行流程:
A:首先判断关系表达式1的值
B:如果结果为true,则执行语句体1
C:如果结果为false,则判断关系表达式2
D:如果结果为true,则执行语句体2
E:如果结果为false,则判断关系表达式3...
F:当所有关系表达式结果都为false时,则执行语句体n+1
格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值1:
语句体1;
break;
...
default:
语句体n+1;
break;
}
格式解释:
表达式的类型:byte,char,short,int
jdk5版本后可以是枚举类型
jdk7版本后可以是字符串
case后的值:是用来和表达式的值进行匹配的;
break:是用来结束语句体的执行;
default:是所有的值和表达式的值不匹配时执行default中语句.
执行流程:
A:首先计算表达式的值;
B:所有case后的值和表达式的值进行匹配,如果匹配成功,就执行对应case后的语句体,遇到break就结束;
C:如果所有的case后的值均不匹配表达式的值,就执行default下的语句,然后程序结束.
注意事项:
A:case体和default体的没有先后顺序;
B:case后的值必须是常量;
C:default后没有值;
D:case穿透(只能向下):break不能省略,如果匹配case语句省略break语句,程序会从case向下继续执行,直到遇到break或者default语句才结束,当default位于前面时,其语句体不会执行;
E:如果将default语句放在了第一行,若表达式值与case中的value都不匹配,程序会从default开始执行直到第一个break出现。
F:如果default语句在case语句中间,并且其前面的case语句省略了break语句,则当default语句无break语句是,程序会穿过default语句向下执行,直到遇到break或}结束,当default语句有break时,则会在执行default中语句体后结束.
格式:
for(1.初始化语句;2.判断条件语句;4.控制条件语句) {
3.循环体;
}
执行流程:
A:执行初始化语句;
B:执行判断条件语句
如果结果为true,则执行循环体语句
如果结果为false,则结束整个循环
C:执行循环体语句
D:执行条件控制语句
E:返回到B步骤继续
格式:
while循环语句格式:
while(判断条件语句) {
循环体语句;
}
while扩展格式:
1.初始化条件语句;
while(2.判断条件语句) {
3.循环体语句;
4.控制条件语句;
}
程序执行流程:
A:首先执行初始化条件语句;
B:执行条件判断语句;
如果结果为true,就执行循环体语句
如果结果为false,就结束整个循环
C:执行循环体语句;
D:执行条件控制语句;
E:返回到B步骤继续执行
注意事项:
判断条件表达式必须是布尔类型.
格式:
do...while循环语句格式:
do {
循环体语句;
} while(判断条件语句);
do...while循环语句扩展格式:
1.初始化条件语句;
do {
2.循环体语句;
3.条件控制语句;
} while(4.判断条件语句);
执行流程:
A:首先执行初始化条件语句;
B:执行循环体语句;
C:执行条件控制语句;
D:执行判断条件语句
如果结果为true,就执行B步骤
如果结果为false,就结束整个循环.
注意事项:
do...while循环至少循环一次.
while之后有个分号;
break:用于中断程序的执行.
注意:break只能存在于switch中或循环语句中(for,while,do...while);
作用:跳出单层循环.
continue:终止本次循环,继续下次循环.
注意:continue只能存在于循环语句中.
break和continue区别:
break是终止本层循环,continue是结束本次循环,继续下次循环.
break和continue是控制循环语句,只能用在循环语句中,直接使用是没有意义的.