当前位置: 首页 > news >正文

GoLang教程005:switch分支

3.4 Switch分支

GoLand(其实是 JetBrains 开发的 Go 编程语言 IDE)中,switchGo 语言(Golang) 的一个重要控制结构,用于替代多个 if-else 语句。

✅ 特点说明

特性说明
自动 breakGo 的 switch 语句默认每个 case 执行完会自动跳出(无需写 break
支持多个匹配值可以在一个 case 中写多个值,用逗号分隔
支持表达式switchcase 都可以是表达式
支持 switch 省略表达式(等价于 switch true

✅ 基本语法

switch 表达式 {
case1:语句块1
case2:语句块2
default:默认语句块
}

🔹 示例一:基本用法

package mainimport "fmt"func main() {color := "red"switch color {case "red":fmt.Println("红色")case "blue":fmt.Println("蓝色")default:fmt.Println("未知颜色")}
}

🔸 输出

image-20250721233711610

🔹 示例二:多个匹配值

package mainimport "fmt"func main() {number := 3switch number {case 1, 3, 5:fmt.Println("奇数")case 2, 4, 6:fmt.Println("偶数")}
}

🔸 输出

image-20250721233746505

🔹 示例三:省略 switch 表达式(更像 if-else)

package mainimport "fmt"func main() {age := 20switch {case age < 18:fmt.Println("未成年人")case age >= 18 && age < 60:fmt.Println("成年人")default:fmt.Println("老年人")}
}

🔸 输出

image-20250721233846885

示例四:使用 fallthrough 强制执行下一个 case(不常用)

package mainimport "fmt"func main() {num := 1switch num {case 1:fmt.Println("一")fallthroughcase 2:fmt.Println("二")fallthroughcase 3:fmt.Println("三")}}

🔸 输出

image-20250721234016324

✅ 小结

功能说明
自动 break不像 Java/C,需要手动 break
可省略表达式支持 switch true {}
支持多个值case 1, 2, 3:
fallthrough手动执行下一个 case
http://www.lryc.cn/news/595602.html

相关文章:

  • 零拷贝技术(Zero-Copy)
  • 【C语言进阶】结构体练习:通讯录
  • 暑期算法训练.5
  • stm32内存分析
  • OpenAI Codex CLI与 Google Gemini CLI 比较
  • 深度解析 HTML `loading` 属性:优化网页性能的秘密武器
  • 基于LangChain构建企业级AI智能体:从架构设计到行业落地实战
  • 深度学习 ---神经网络以及数据准备
  • ASP .NET Core 8高效集成Redis缓存实战
  • 【黑马SpringCloud微服务开发与实战】(四)微服务02
  • 前端之学习后端java小白(一)之SDKMAN及helloword
  • 如何用 LUKS 和 cryptsetup 为 Linux 配置加密
  • 【爬虫】05 - 爬虫攻防
  • 前后端分离项目进阶1---前端
  • 耐看点播网页入口 - 追最新电视剧,看热门电影|官网
  • c语言 进阶 动态内存管理
  • 3x3矩阵教程
  • 一次 POI 版本升级踩坑记录
  • 二维码扫描登录流程详解
  • 对理性决策模型的剖析及应用路径
  • Java学习 ------BIO模型
  • 【VASP】VASP 机器学习力场(MLFF)实战
  • C++ <继承> 详解
  • js迭代器
  • JAVA序列化知识小结
  • 我国《数字中国规划》对虚拟产权的监管:合规框架下的渐进式创新
  • stream event
  • 前端,demo操作,增删改查,to do list小项目
  • C++ 分配内存释放内存
  • Anaconda 路径精简后暴露 python 及工具到环境变量的配置记录 [二]