06-switch语句
2024-10-20 00:33:04
switch语句
switch是一个条件语句,它是可以代替多个if else的常用方式
例子
package main
import "fmt" func main() {
a:=10 #定义一个变量a=10
switch a {
case 1:
fmt.Println("")
case 2:
fmt.Println("")
case 10:
fmt.Println("") }
}
switch a 将 a 的值与每个case后面的值进行比较,符合条件的就执行相应的代码。注意:case不允许出现重复值
默认情况default
当其他情况都没匹配上时会执行default的代码。default不一定只能出现在switch语句的最后,他可以放在switch语句的任何地方
package main
import "fmt" func main() {
a:=11
switch a {
case 1:
fmt.Println("")
case 2:
fmt.Println("")
case 10:
fmt.Println("")
default:
fmt.Println("不知道")
}
}
多表达式判断
通过用逗号分隔,可以在一个case中包含多个表达式
package main
import "fmt" func main() {
a:=11
switch a {
case 1,4,5:
fmt.Println("")
case 2,8,9:
fmt.Println("")
case 10,11:
fmt.Println("")
default:
fmt.Println("不知道")
}
}
#结果
10
无表达式的switch
打印符合条件的相应代码
package main
import "fmt" func main() {
a:=11
switch { #无表达式a
case a>10:
fmt.Println("大于10")
case a<10:
fmt.Println("小于10")
default:
fmt.Println("")
}
}
#结果
大于10
Fallthrough语句
在Go中,每执行完一个case后,会从switch语句中跳出来,不再做后续case的判断和执行。使用Fallthrough语句可以在已经执行完成的case之后,把控制权转移到下一个case的执行代码中。
package main
import "fmt" func main() {
a:=10
switch a {
case 1:
fmt.Println("")
fmt.Println("xxxx")
case 2:
fmt.Println("")
case 10:
fmt.Println("")
//穿透,无条件执行下一个case的内容
fallthrough
case 11:
fmt.Println("")
fallthrough
case 12:
fmt.Println("")
}
}
#结果
10,11,12
最新文章
- AlloyRenderingEngine文本框组件
- 李洪强iOS经典面试题142-第三方框架及其管理
- px 与 dp, sp换算公式?
- J2EE 第二阶段项目(八)
- js encodeURI方法认识
- 第1章 shell编程概述
- Android真机调试的时候logcat中无法输出调试信息的解决办法
- WordPress FunCaptcha插件跨站脚本漏洞
- Hash Killer I II
- forward 和redirect的区别
- spark shuffle
- tesseract-ocr识别英文和中文图片文字以及扫描图片实例讲解
- Hyper-v虚拟机联网配置
- CCF CSP 201612-1 中间数
- Arch Linux 硬盘引导-联网安装
- Python基础-数据类型-转摘
- WCF寄宿IIS
- c# 虚拟路径转换为绝对路径
- eclipse安装activiti designer
- maven项目工程目录约定
热门文章
- 权限管理(chown、chgrp、umask)
- leetcode 一些算法题及答案
- 洛谷 P4071 [SDOI2016]排列计数 题解
- 验证和交叉验证(Validation &; Cross Validation)
- 2016级移动应用开发在线测试13-Location、Sensor & Network
- Python各种扩展名(py, pyc, pyw, pyo, pyd)区别
- GoCN每日新闻(2019-10-19)
- Sybase数据库连接配置
- ELK:使用docker搭建elk平台
- 使用docker 基于centos7制作mysql镜像