Java基础核心-选择结构
顺序结构
所谓顺序结构,其实就是按照代码原本应该的方式进行执行。
从上到下,从左到右。
总的来说,就是写在上边的代码先运行,下边的代码后运行;左边的代码先运行,右边的代码后运行。
if判断结构
if(){
代码块.....
}
if关键字,如果的意思
条件表达式: 结果是真或者假
代码块…
执行流程: 表达式结果为真,代码块就执行;表达式不成,代码块不执行
if(){
代码块1.....
}else{
代码块2.....
}
if(){
代码块1.....
}else if(){
代码块2.....
}else{
代码块3.....
}
if(){
if(){
代码块1.....
}else{
代码块2......
}
}else{
代码块2......
}
if(选择1){
代码块1.....
}else if(选择2){
代码块2......
}else if(选择3){
代码块3......
}
使用if结构中的else if写法可以解决这个问题,但是这种写法结构啰嗦,且需要进行多次判断,代码的执行效率较低。
switch选择结构
使用switch解决类似问题,switch会将case后的值写入栈中,表达式的结果会直接在栈中进行查询并选择,效率更高。
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
语法说明:
1.表达式的取值:byte,short,int,char;JDK5以后可以是枚举;JDK7以后可以是String。
2.case后面跟的是要和表达式进行比较的值。
3.break表示中断,结束的意思,可以结束switch语句。
4.default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
使用switch的注意事项:
1.case后面只能是常量,不能是变量,而且,多个case后面的值不能相同。
2.default可以省略。但一般不建议,除非结果是可以预计且不会发生变化的。
3.break可以省略,一般不建议。
4.default的位置可以出现在switch语句任意位置。
5.switch语句的结束条件必定是遇到break或已经执行到最末尾。
if判断结构和switch选择结构的区别:
1. if语句可以判断范围,switch语句只能判断具体的值。
2. if语句可以判断多个条件,switch语句只能判断一个条件。
3. if语句的效率低,switch语句的效率高。