选择结构与分支结构
一、基本的if选择结构
选择结构
概念:根据已知条件进行逻辑判断,满足条件后执行相应操作。
-
语法:
if(布尔表达式){
//代码块
}
-
执行流程:
- 对布尔表达式先进行判断
- 结果为true,则先执行代码块,再执行后续代码。
- 结果为false,则跳过代码块,直接执行后续代码。
二、if else选择结构
-
语法
if(布尔表达式){
//代码块1
}else{
//代码块2
}
-
执行流程:
- 对布尔表达式进行判断。
- 结果为true,则先执行代码块1,再退出整个结构,执行后续代码。
- 结果为false,则先执行代码块2,再退出整个结构,执行后续代码。
三、多重if选择结构
if(布尔表达式1){
//代码块1
}else if(布尔表达式2){
//代码块2
}else if(布尔表达式3){
//代码块3
}else{
//代码块4
}
- 执行流程
- 表达式1为true,则执行代码块1,再退出整个结构。
- 表达式2为true,则执行代码块2,再退出整个结构。
- 表达式3为true,则执行代码块3,再退出整个结构。
- 以上均为false,则执行代码块4,再退出整个结构。
- 注意:相互排斥,有一个为true,其他均不再执行,适用区间判断,但要保证条件顺序(从大到小、从小到大)。
四、嵌套if选择结构
-
语法
if(外层表达式){ if(内层表达式){ //内层代码块1 }else{ //内层代码块2 } }else{ //外层代码块 }
-
执行流程:
- 当外层条件满足时,再判断内层条件。
-
注意:
- 一个选择结构中,可嵌套另一个选择结构。
- 嵌套格式正确的情况下,支持任意组合。
五、switch分支结构
-
语法
switch (变量|表达式){ case 值1: 逻辑代码1; case 值2: 逻辑代码2; case 值3: 逻辑代码3; default: 未满足时的逻辑代码; }
-
可判断类型
- byte、short、int、char、String (JDK7+)
-
执行流程
- 如果变量中的值等于值1,则执行逻辑代码1。
- 如果变量中的值等于值2,则执行逻辑代码2。
- 如果变量中的值等于值n,则执行逻辑代码n。
- 如果变量中的值没有匹配的case值时,执行default中的逻辑代码。
-
注意
- 当匹配的case执行后,不会自动退出整个结构,而是然特向下执行
-
break关键宁可在匹配的case执行后,跳出整个结构。
六、局部变量
- 概念:声明在方法内部的变量,必须先赋值再使用。
- 作用范围:定义行开始到所在的代码块结束。
- 注意:多个变量,在重合的作用范围内,不可出现重名(命名冲突)。
跳出整个结构。
六、局部变量
- 概念:声明在方法内部的变量,必须先赋值再使用。
- 作用范围:定义行开始到所在的代码块结束。
- 注意:多个变量,在重合的作用范围内,不可出现重名(命名冲突)。