(全部来自“韩顺平教育”)
程序控制结构
一、顺序控制
程序从上到下逐行地执行,中间没有任何判断和跳转
二、分支控制(if,else,switch)
让程序有选择的执行,分支控制有三种
1)单分支
基本语法:
if(条件表达式){
执行代码块;(可以有多条语句)
}
2)双分支
if(条件表达式){
执行代码块1;
}
else {
执行代码块2;
}
3)多分支
if(条件表达式){
执行代码块1;
}
else if(条件表达式2){
执行代码块2;
}
......
else{
执行代码块n;
}
特别说明:①多分支可以没有else,如果所有的条件表达式都不成立,则一个执行入口都没有
②如果有else,如果所有的条件表达式都不成立,则默认执行else代码块。
4)嵌套分支(不要超过3层--可读性不好)
5)switch分支结构
switch(表达式){
case 常量1:
语句块1;
case 常量2:
语句块2;
break;
...
case 常量n:
语句块n;
break;
default:
default语句块;
break;
}
注意事项:
①表达式数据类型,应和case后的常量类型一致,或者是可以自动转成可以相互比较的类型
②switch(表达式)中表达式的返回值必须是:(byte,short,int,char,enum[枚举],String)
③case子句中的值必须是常量或常量表达式,而不能是变量
④default字句是可选的,当没有匹配的case时,执行default
⑤break语句用来在执行完一个case分支后是程序跳出switch语句块;如果没有写break,程序会顺序执行到switch结尾,除非遇到break;
6)switch和if的比较
①如果判断的具体数值不多,而且符合byte、short、int、char、enum、String这6种类型。虽然两个语句都可以使用,建议使用switch语句
②其他情况:对区间判断,对结果为boolean类型判断,使用if,if的适用范围更广
三、循环控制(for,while,dowhile,多重循环)
1)for循环控制
基本语法:
for(循环变量初始化;循环条件;循环变量迭代){
循环操作(可以多条语句);
}
说明:①for四要素:循环变量初始化、循环条件、循环操作、循环变量迭代
注意事项:
①循环条件是返回一个布尔值的表达式
②for(;循环判断条件;)中的初始化和变量迭代可以写到其他地方,但是两边的分号不能省略
③循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开,循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开
2)while循环
基本语法:
循环变量初始化;
while (循环条件) {
循环体(语句);
循环变量迭代;
}
注:①循环条件是返回一个布尔值的表达式;
②while循环是先判断再执行语句
3)do...while循环控制
循环变量初始化;
do{
循环体(语句);
循环变量迭代;
}while(循环条件);
注:①先执行,再判断(即:一定会执行一次)
②最后有一个分号;
4)多重循环控制(建议:一般使用两层,最多不要超过3层,否则,代码的可读性很差)
四、break
break语句用于终止某个语句块的执行
基本语法:
{
......
break;
......
}
注意事项:
①break语句在现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块;
②标签的基本使用
label1:{ ......
label2: { ......
label3: { ......
break label2;
.......
}
}
}
break语句可以指定退出哪层
label1是标签,由程序员指定
break后指定到哪个label就退出到哪里
在实际的开发中,尽量不要使用标签
如果没有指定break,默认退出最近的循环体
补充知识点:比较字符串的内容,使用的方法:equals
五、continue
continue语句用于结束本次循环,继续执行下一次循环
continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环,这个和前面的标签的使用的规则一样。
基本语法:
{ .......
continue;
.......
}
六、return
return使用在方法中,表示跳出所在的方法
注意:如果return写在main方法中,会退出程序..
F b m l S