当前位置: 首页 > 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.dtcms.com/a/290052.html

相关文章:

  • wordle game(猜词游戏)小demo【react + ts】
  • 子网划分核心原理 (网络原理1)
  • 配置 Nginx 反向代理
  • 微信小程序服务端快速对接指南(java版)
  • 本地生活服务 app 同城信息发布系统搭建
  • 文件的写出操作|文件的追加写入操作|文件操作的综合案例
  • BERT 的“池化策略”
  • 基于SpringBoot和leaflet-timeline-slider的历史叙事GIS展示-以哪吒2的海外国家上映安排为例
  • 技能学习PostgreSQL中级专家
  • 云原生安全工具:数字基础设施的免疫长城
  • 解码视觉体验:视频分辨率、屏幕尺寸、屏幕分辨率与观看距离的科学关系
  • 【Linux庖丁解牛】— 线程控制!
  • iOS 加固工具有哪些?快速发布团队的实战方案
  • 个人中心产品设计指南:从信息展示到用户体验的细节把控
  • SQLite以及Room框架的学习:用SQLite给新闻app加上更完善的登录注册功能
  • Lua:小巧而强大的脚本语言,游戏与嵌入式的秘密武器
  • 遇到偶现Bug(难以复现)怎么处理?
  • uni-app 开发小程序项目中实现前端图片压缩,实现方式
  • taro+pinia+小程序存储配置持久化
  • 健身管理小程序|基于微信开发健身管理小程序的系统设计与实现(源码+数据库+文档)
  • 【Unity基础】Unity中2D和3D项目开发流程对比
  • uni-app开发小程序,根据图片提取主题色值
  • 跑腿小程序|基于微信小程序的跑腿平台小程序设计与实现(源码+数据库+文档)
  • 表单属性总结
  • 常见算法——查找与排序
  • LeafletJS 主题与样式:打造个性化地图
  • 【高精度 带权并集查找 唯一分解定理】 P4079 [SDOI2016] 齿轮|省选-
  • 在血研所(SIH)恢复重建誓师大会上的讲话(by血研所创始所长王振义院士)
  • Stream流-Java
  • 用Dify构建气象智能体:从0到1搭建AI工作流实战指南