Go条件判断之switch分支控制语句
1、switch分支控制介绍
switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上到下逐一测试,直到匹配为止。
语法:
switch 表达式 {
case 表达式1,表达式2, … :
语句块1
case 表达式3, 表达式4, … :
语句块2
//这里可以有多个case语句
default:
语句块
}
流程图:
switch 的执行的流程是:
**1)**先执行表达式,得到值,然后和 case 的表达式进行比较,如果相等, 就匹配到,然后执行对应的 case 的语句块,然后退出 switch 控制。
**2)**如果 switch 的表达式的值没有和任何的 case 的表达式匹配成功,则执行 default 的语句块。执行后退出 switch 的控制.
**3)**golang 的 case 后的表达式可以有多个,使用 逗号 间隔.
**4)**golang 中的 case 语句块不需要写 break , 因为默认会有,即在默认情况下,当程序执行完 case 语句块后,就直接退出该 switch 控制结构。
1 |
|
2、switch分支控制练习题
1、switch 后也可以不带表达式,类似 if –else分支来使用。
2、case 中也可以对 范围进行判断
3、switch 后也可以直接声明/定义一个变量
1 |
|
3、switch和if分支的对比
1)如果判断的具体数值不多,而且符合整数、浮点数、字符、字符串这几种类型。建议使用 swtich语句,简洁高效。
2)其他情况:对区间判断和结果为 bool 类型的判断使用 if,if 的使用范围更广。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!