if语句
格式1(一选一)
//条件判断的结果,必须是true或者false
if(条件判断){
语句体;
}
格式2(二选一)
//条件判断的结果,必须是true或者false
//else 后如果没跟 if 不可以加小括号()
if(条件判断){
语句体1;
}else{
语句体2;
}
格式3(多选一)
//条件判断的结果,必须是true或者false
//else 后如果没跟 if 不可以加小括号()
if(条件判断1){
语句体1;
}else if(条件判断2){
语句体2;
}else if(条件判断3){
语句体3;
}
...
else{
//前面所有的条件都不成立,才执行
语句体n+1;
}
switch语句
当需要在几个固定的值中,选择一个种情况来执行,这个时候可以选择switch语句
int n=值; //n的值可能是下面的几种情况
switch(n){
case 值1:
语句体;
break; //用于跳出switch语句,亦可用于跳出for,while循环
case 值2:
语句体;
break;
...
default:
语句体;
break;
}
注意事项:
1)case后面的值不能重复
2)case后面的值只能是常量,不能是变量
3)switch表达式的数据类型,只能是固定的几种
byte short int char
JDK7以后可以是String
JDK5以后可以是枚举(后面学)
4)break是可以省略,但是会穿透(即当其中一个 case 值与 n 相同时后面的 case 值将不再进行判断,直接运行其后的语句体,知道遇到 break 结束 switch 语句或 switch 运行结束)
for循环
for循环的格式
for(初始化语句;条件判断;条件控制){
循环语句体;
}
...
执行流程:(循环体语句优先于条件控制运行)
1.初始化语句
2.条件判断
true: 继续执行第3步
false: 循环结束,执行for循环以后的语句
3.执行循环语句体;
4.条件控制
5.回到2步骤继续执行
while循环
格式
初始化语句;
while(条件判断){
循环语句体;
条件控制;
}
执行流程:
1.初始化语句
2.条件判断
true: 继续执行第3步
false: 循环结束,执行for循环以后的语句
3.执行循环语句体;
4.条件控制
5.回到2步骤继续执行
do…while循环
初始化语句;
do{
循环语句体;
条件控制语句
}while(条件判断);
特点:不管条件是否成立,循环语句体至少执行一次。
三种循环的区别
for、while与do...while的区别
for、while循环: 必须满足条件才执行
do...while: 不管条件是否成立,循环语句体至少执行一次。
for和while的区别
for循环:控制循环的变量,只能在循环里面使用
while循环:控制循环的变量,可以在循环外面使用
如何选择使用哪种循环
知道次数,选择使用for循环
不知道次数,选择使用while循环
跳转语句
break的使用场景
1)switch语句:遇到break结束,没有遇到break穿透
2)循环语句中:结束(中断,跳出)循环
continue使用场景
场景:只能在循环语句中使用
作用:结束本次循环,进入下一次循环
return使用场景
场景:方法中
作用:当方法有返回值时,返回相应类型的数据并对结束方法,没有返回值时结束方法(包括 main 方法),且在本方法内,其后不能再有任何语句
【带标号的跳出】:
当循环语句和switch语句嵌套时,break只能跳出单层循环或者switch. 如想跳出外层循环,必须给外层循环添加 一个标号,跳转到标号的位置。
wh:while(条件){
switch(表达式){
case 值:
//break; //跳出switch
break wh; //通过标号跳转到标号所在循环外
...
}
}