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.pswp.cn/bicheng/89999.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/89999.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp相关地图 API调用

目录 一、 注意事项&#xff1a; manifest.json需增加配置 二、获取用户收货地址 [uni.chooseAddress] 三、获取当前的地理位置、速度 [uni.getLocation] 四、打开地图选择位置、查看位置(导航) [uni.chooseLocation] [uni.openLocation] 五、使用腾讯地图逆地址解析接口实…

Java学习----NIO模型

在 Java 的 I/O 模型中&#xff0c;NIO&#xff08;Non - Blocking I/O&#xff0c;非阻塞 I/O&#xff09;是对 BIO 的重要改进。它为高并发场景提供了更高效的处理方式&#xff0c;在众多 Java 应用中发挥着关键作用。NIO模型的核心在于非阻塞和多路复用&#xff0c;其采用 “…

MySQL计数函数count原理分析

前言 统计表中数据的条数是非常常用的操作,但是咱们常用的InnoDB存储引擎计数函数是现时统计的,所以会出现性能的问题,这次我准备分享计数函数count的原理,保证之后遇到计数方面的问题都可以轻易灵活的解决 与MyISAM存储引擎相比,MyISAM存储引擎是自己记录了表中数据的条数,但…

Day07_网络编程20250721_大项目

基本代码&#xff1a;搭建服务器客户端&#xff0c;要求服务器使用 epoll 模型客户端使用多线程服务器打开数据库&#xff0c;表单格式如下name text primary key pswd text not null客户端做一个简单的界面&#xff1a;1&#xff1a;注册2&#xff1a;登录无论注册还是登录&am…

20250721

P5357 【模板】AC 自动机 - 洛谷 主要是构建fail树 /* 我们可以知道的是&#xff0c;当访问一个点x时&#xff0c;接下来需要跳转其fail[x]&#xff0c;以此类推&#xff0c;如果在某个fail[x]上出现了一个字符串&#xff0c;那么相应的统计次数应该加1&#xff0c;然后当访…

【INT四则优先算式】2022-9-22

缘由ccf201903-2二十四点我用暴力破解做的&#xff0c;但是两个程序一个拿到了满分&#xff0c;一个拿到了50分&#xff0c;看了很长时间也没看出问题在哪里&#xff0c;希望有英雄慧眼帮我看一下-编程语言-CSDN问答 void INT四则优先算式() {//缘由https://ask.csdn.net/ques…

本地k8s集群的搭建

windows机器&#xff0c;考虑如果使用云服务器&#xff0c;每年的开销还是太大&#xff0c;不值得&#xff0c;自己只是做demo&#xff0c;了解各种配置和使用即可&#xff0c;使用VMware的虚拟机来搭建k8s集群 使用docker安装rancher和k8s yum -y install chronycat > /et…

B树、B+树的区别及MySQL为何选择B+树

B树与B树 B树和B树都是自平衡的多路搜索树&#xff0c;广泛应用于数据库和文件系统中&#xff0c;用于高效管理大量数据。它们的设计目标是在磁盘存储环境下减少I/O操作次数&#xff0c;提高数据访问效率。下面我将逐步解释两者的定义、特性、比较以及应用场景&#xff0c;确保…

Unity之可视化编程VisualScripting快速入门

文章目录 前言 脚本机和状态机 脚本图ScriptGraph 脚本图 子图 自定义事件 状态图StateGraph 状态图 Start状态 创建新状态 过渡连接 常用功能 射线检测 补间动画 按钮点击 前言 可视化脚本使您无需编写代码即可为游戏或应用程序创建逻辑。可视化脚本使用基于节点的可视化图形…

2025三掌柜赠书活动第二十五期 网络安全应急响应实战

目录 前言 网络安全的重要性 关于《网络安全应急响应实战》 编辑推荐 内容简介 作者简介 图书目录 《网络安全应急响应实战》全书速览 结束语 前言 在当今数字化时代&#xff0c;网络安全已经成为企业和个人都无法忽视的重要问题。随着网络技术的飞速发展&#xff0c;…

车载软件架构 --- 软件开发面临的问题

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 周末洗了一个澡,换了一身衣服,出了门却不知道去哪儿,不知道去找谁,漫无目的走着,大概这就是成年人最深的孤独吧! 旧人不知我近况,新人不知我过…

MySQL 8.0 OCP 1Z0-908 题目解析(31)

题目121 Choose two. Examine this command, which executes successfully on InnoDB Cluster: dba.dropMetadataSchema() Which two statements are true? □ A) The mysql_innodb_cluster_metadata schema is dropped from the instance where the connection was establish…

本地生活服务 app 同城信息发布系统搭建

一、逻辑分析用户需求层面&#xff1a;对于发布者来说&#xff0c;需要一个便捷的界面来输入同城信息&#xff0c;包括但不限于房屋租售、招聘求职、二手交易、活动推广等各类信息。发布者要能够上传相关图片、详细描述信息内容、设置价格&#xff08;如果有需要&#xff09;、…

[Python] -项目实战4- 利用Python进行Excel批量处理

一、为什么要批量处理Excel文件? 节省时间:人工对数十、数百个 Excel 文件重复操作不现实,Python 批量处理一次搞定。 保证一致性:统一格式、统一操作,避免手动误差。 易于集成:可嵌入日常自动化流程,支持定时和触发执行。 二、常用库及选型建议 库 作用 优势 局限 p…

社区搜索离线回溯系统设计:架构、挑战与性能优化|得物技术

一、项目背景在社区场景中&#xff0c;我们积累了丰富的用户互动数据。这些历史互动信息对CTR/CVR预估建模具有重要参考价值&#xff0c;用户的每次互动都反映了其特定维度的偏好特征。当前&#xff0c;已在多个业务实践中验证&#xff0c;基于用户历史互动特征进行未来行为预测…

WPF——自定义ListBox

在阅读本文前&#xff0c;最好先看看WPF——自定义RadioButton 背景 WPF中实现单选功能通常有两种方案&#xff1a; - RadioButton组&#xff1a;传统方案&#xff0c;但代码冗余 - ListBox定制&#xff1a;通过样式改造&#xff0c;兼顾数据绑定和UI灵活性 需求 一组选项中…

rancher上使用rke在华为云多网卡的服务器上安装k8s集群问题处理了

报错:问题&#xff1a;[[network] Host [192.168.0.213] is not able to connect to the following ports: [192.168.0.213:2379]. Please check network policies and firewall rules]问题&#xff1a; roothwy-isms-210-66:~# gotelnet 172.17.210.66 2379 map[2379:failed] …

xformers包介绍及代码示例

文章目录主要特性安装方式主要优势使用场景注意事项代码示例xFormers是由Meta开发的一个高性能深度学习库&#xff0c;专门用于优化Transformer架构中的注意力机制和其他组件。它提供了内存高效和计算高效的实现&#xff0c;特别适用于处理长序列和大规模模型。github地址&…

CityEngine自动化建模

CityEngine学习记录 学习网址&#xff1a; 百度安全验证 CityEngine-CityEngine_Rule-based_Modeling-基于规则建模和输出模型 - 豆丁网 CityEngine 初探-CSDN博客 City Engine CGA 规则包_cga规则-CSDN博客 CityEngine学习记录 学习网址&#xff1a;百度安全验证 CityE…

Nacos+LoadBalancer实现服务注册与发现

目录 一、相关文章 二、兼容说明 三、服务注册到Nacos 四、服务发现 五、服务分级存储模型 六、查看集群服务 七、LoadBalancer负载均衡 一、相关文章 基础工程&#xff1a;gradle7.6.1springboot3.2.4创建微服务工程-CSDN博客 Nacos服务端安装&#xff1a;Nacos服务端…