选择结构
内容结构
一、顺序结构
二、分支控制
### (1)单分支
### (2)双分支
### (3)多分支
### (4)嵌套分支
### (5)switch 分支结构
三、switch
和if
的比较
一、顺序结构
特点:从程序入口进入,依次执行每一条语句,直到程序出口
注意点:依据程序执行的特点,变量应该先声明,后执行
二、分支结构
(1)if-else
if(表达式)
表达式为true
:执行if
括号内的语句
表达式为false
:执行else
括号内的语句
(2)if - else if - .... - else
程序只有一个出口,如果符合条件,后面的条件不会继续判断
如果所有条件都不符合,默认执行else
语句
可以没有else
语句
(3)循环嵌套
注意:不要超过三层,可读性差
(4)switch
结构
基本结构
java
switch(表达式){
case 常量一:
语句一;
break;
case 常量二:
语句二;
break;
...........
default:
default 语句块;
break;
}
执行原理说明
### (1)以`switch`表达式作为基准,逐个和 case 常量进行比较
*
### 1. 如果成功匹配,则执行对应`case`的语句
*
### 2. 如果所有都不匹配,执行`default`语句
### (2)执行完`case`语句之后跳出`switch`结构,接着执行后面的语句
语句穿透
### 如果没有`break`,程序会一直执行下去(即后面每个`case`语句的内容)
### 如果遇到`break`,跳出`switch`语句,继续执行后面的代码
使用的注意点
### (1)每一个`case`情况必须要有一个break
### (2)switch 表达式
*
### 1. 表达式的数据类型必须和`case`的常量类型一致,或者是可以自动转成可以相互比较的类型,例如:输入`字符`和常量`int`
*
### 2. (重点!!!)`switch`表达式中的返回值必须是:`byte short int char enum(枚举) String`
### (3)`case`句子中的值必须是常量,不可以是变量