程序选择结构

程序选择结构

  • 选择结构是根据条件判断的结果来执行不同的代码
  • 选择结构可以细分为单分支结构、双分支结构和多分支结构
  • Java提供了if控制语句、switch语句来实现选择结构

if控制语句

1.使用if语句实现单分支处理程序选择结构

语法

if(表达式){
语句1
语句2

}

if表达执行步骤

  • 对表达式结果进行判断
  • 如果表达式结果为真,则执行该语句
  • 如果表达式结果为假,则跳过该语句

PS

  • 表达式是布尔类型的表达式,其结果为true或false

2.if-else实现双分支处理程序选择结构

语法

if(表达式){
语句1
语句2

}else{
语句3

}

if-else表达执行步骤

  • 如果表达式结果为真,则执行语句1
  • 如果表达式结果为假,则执行else分支的语句2

PS

  • if-else的语句由if和紧随其后的else组成
  • else子句不能单独使用,它必须是if语句的一部分,与最近的if语句配对使用

3.if实现多分支处理

程序选择结构

  • 当有多个条件判断是,就需要使用多分支if语句解决

语法

if(表达式){
语句1
语句2

}else if{
语句3
语句4

}else if{
语句5
语句6

}

多分支执行步骤

  • 对表达式1结果进行判断
  • 如果表达式1结果为真,执行语句1,否则,判断表达式2的值
  • 如果表达式2结果为真,执行语句2,否则,判断表达式3的值,以此类推
  • 如果表达式都为假,执行最后的语句

PS

  • 如果if或者else子句中要执行的语句超过一条,则必须将这些语句用大括号括起来
  • 语句可以是一条语句,也可以是多条语句

嵌套if控制语句

程序选择结构

  • 在if控制语句中又包含一个过多个if控制语句的成为嵌套if控制语句

语法

if(表达式){
if(表达式2){
语句1
}else {
语句2
}else {
if(表达式3){
语句3
}else{
语句4
}
}

嵌套if语句执行步骤

  • 对表达式的结果进行判断
  • 如果表达式1的结果为真,再对表达式2的值进行判断。
    如果表达式2的结果为真,执行语句1,否则,执行语句2。
  • 如果表达式1的结果为假,再对表达式3的值进行判断。
    如果表达式3的结果为真,执行语句3,否则,执行语句4。

switch语句

程序选择结构

  • switch语句用于实现多分支选择结构
  • 在某些情况下可以和多分支if控制语句结构互相替代

语法

switch(表达式){

​ case 常量1:

​ 语句;

​ break;

​ case 常量2:

​ 语句;

​ break;

​ …

​ default:

​ 语句;

​ break;

}

switch语句执行步骤

  • 计算switch后表达式的值
  • 将计算结果从上至下一次语case后的常量值比较
  • 如果相等就执行case后的代码块,遇到break就结束
  • 如果与任何一个case后的常量值都不匹配,就执行default后的语句

PS

  • switch、case、break、default是Java关键字
  • switch后的表达式只能是整形、字符型或枚举型
  • case用于和表达式进行匹配
  • break用于终止后续语句的执行
  • default是可选的,当其他条件都不匹配时,执行default后的语句
  • 如果case后没有break语句,程序将继续向下执行,直到遇到break语句或switch语句结束