欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Golang的switch

程序员文章站 2022-05-02 08:18:40
...

switch分支控制

基本介绍:
switch 用于基于不用条件执行不同动作,每个case分支都是唯一的,从上到下逐一测试

基本语法

switch 表达式{
	case 表达式1,表达式2,...:
	语句块1

	case 表达式3,表达式4,...:
	语句块2
	//可以有多个case

	default:
		语句块

}

流程图:
Golang的switch
注意事项和细节

  • case后是一个表达式(即:常量值、变量、一个有返回值的函数等都可以)
  • case后的各个表达式的值的数据类型,必须和switch 的表达式数据类型一样
  • case后可以带多个表达式,使用逗号间隔。比如case 表达式1,表达式2…
  • case后的表达式如果是常量值,则要求不能重复
  • case后不需要带break,程序匹配到一个case后就会执行对应的代码块,然后退出switch,如果一个都匹配不到,则执行default
  • default不是必须的
  • switch后也可以不带表达式,类似if-else分支来使用
    Golang的switch
  • switch后也可以直接声明/定义一个变量,分号结束(不推荐)
  • switch的穿透 fallthrought
    Golang的switch

什么情况下使用switch,什么情况下使用if

  1. 如果判断的具体数值不多,而且符合整数、浮点数、字符、字符串这几种类型。建议使用switch语句,简介高效。
  2. 其他情况,对区间判断和结果为bool类型的判断,使用if,if的使用范围更广。
相关标签: golang switch