【Java】选择结构

选择结构

  • 选择结构:根据条件来选择性地执行某段代码

if 语句

  • 语法结构
if (boolean 表达式 或 boolean 变量) {
    条件执行体 // 为 true 时执行
}
  • 执行流程


                                                                图 1 if语句

  • if (boolean 表达式) 后没有 分号

if-else 语句

  • 语法结构

  • else 的隐含条件是对前面条件取反

if (boolean 表达式 或 boolean 变量) {
    条件执行体 1 // 为 true 时执行 
} else {
    条件执行体 2 // 为 false 时执行
}
  • 执行流程


                                                        图 2 if-else语句

  • if-else 语句和三元运算符:从语义上二者的含义相同;从本质上说,if-else 是语句结构,三元运算符是一种运算符号,三元运算符运算结束后会得到一个结果,而 if-else,不能返回什么结果,只能控制语句的执行流程。

  • 不能直接使用 else 语句.

if-else if-else 语句

  • 语法结构
if (boolean 表达式 A) {
    条件执行体 1 // A为 true 时执行 
} else if (boolean 表达式 B) {
    条件执行体 2 // B为 true 时执行
} else {
    条件执行体 3 // 为 false 时执行
}
  • 执行流程


                                                图 3 if-elseif-else语句

  • 不能单独使用 else if
  • 可以不需要 else,至少一个 else if

switch 语句

  • 语法结构
switch (整型表达式) {
    case 值 1:
        执行语句 1;
        break; // 注意是否要写 break
    case 值 2:
        执行语句 2;
        break;
    ...
    case 值 n:
        执行语句 n;
    break;
    default:
        以上值都不匹配时执行的语句; // 不用写 break
}
  • 执行流程


                                                图 4 switch语句

  • switch 语句适用于对多个整型值进行匹配判断,从而实现条件的分支控制,即“整型表达式 == int类型的值”
  • switch 语句后的表达式的数据类型只能是 byte、short、char、int 四种整数类型,枚举类型和 String 类型(从 Java 7 才允许),不能是 boolean 类型
  • switch 语句支持的基本数据类型只有四种:byteshortcharint不支持 long 类型,本质:switch 仅仅只能支持 int 类型(byte、short、char 会自动提升为 int 类型)
  • switch 执行的时会把入口 case 之后的 case 统统忽略,会一直往下执行,直到遇到 break 或 return (穿透)
  • default 一般放在 switch 的最后,也不需要写 break

总结

  • if 语句:针对单个条件判断
  • if-else 语句:针对两个相斥条件判断
  • if-else if-else 语句:针对多个相斥条件判断(范围
  • switch 语句:针对多个相斥条件判断(整型值
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值