多分支语句switch在存在多个条件判断时使用,代码的可读性上要比连续不断的else if语句更好。Go中的switch与java php还是有区别的。java  php使用break语句来中断switch的执行,且都是如下这种方式:

switch (expression)
{
case label1:code to be executed if expression = label1;break;
case label2:code to be executed if expression = label2;break;
default:code to be executedif expression is different from both label1 and label2;
}

Go中的switch则有如下两种写法:

方式一:switch后不带变量,逻辑在case语句中进行处理,相当于多个纯粹的else if 语句
switch{case expression1:operation1case expression2:operation2case expression3:operation3
default:operationdefault
}方式2:与java和php的处理类似,但是每个case可以包含多个值,这在java和php中是不允许的。
switch var1{case label1,label11:operation1case label2:operation2case label3:operation3
default:operationdefault
}

示例:

方式一:c := 6switch {case c < 7:fmt.Println("7")case c < 8:fmt.Println("8")default:fmt.Println("default")}
方式二:day := 4switch day {case 1, 2, 3:fmt.Println("1")case 4:fmt.Println("4")case 5:fmt.Println("5")}

GoLang-4(switch)相关推荐

  1. golang for switch break 使用

    为什么80%的码农都做不了架构师?>>>    不加入标签,只能break swtich package mainfunc main() {i := 10for {i--switch ...

  2. Go语言switch语句

    Golang中的switch比起其他语言的switch更灵活,除了支持常规的切换,如下: switch i { case 0: fmt.Printf("0") case 1: fm ...

  3. Go语言-switch case | switch中判断多个值、interface conversion: interface {} is float64, not int

    文章目录 Go语言-switch case 背景 switch case Golang中switch的特殊用法--fallthrough go语言switch中判断多个值 Type Switch,判断 ...

  4. 前端转golang从小白到实战自学笔记(2023/3/1)

    了解:https://www.runoob.com/go/go-concurrent.html golang学习方向 区块链研发工程师 go服务器=>(特点:数据处理,处理大并发)/游戏软件工程 ...

  5. 2021中大厂php+go面试题(1)

    一.前言 最近打算从二线去一线,借着远程面试盛行的机会,果断远程面了一圈,遇到的面试题也都记了下来,主要是php+go的部分面试题.部分问题附带答案,希望对大家找工作能有帮助. 首先面试都是从小公司到 ...

  6. golang-文章翻译-go常见的10种错误

    文章目录 一.枚举默认值和json反序列化 二.BenchMarking和内联 三.每次传参都应该用指针吗? 四.break和条件控制语句 五.错误管理 六.数组初始化 6.1 len 和 cap 6 ...

  7. 李迟2022年10月工作生活总结

    本文为 2022 年 10 月工作生活总结. 研发编码 Go 判断interface{}是否为空 判断interface{}类型是否为空,不能直接使用==nil来判断(用之无效),需先用reflect ...

  8. Go语言头秃之路(一)

    更新系列 Go语言头秃之路(零) Go语言头秃之路(二) Go语言头秃之路(三) Go语言头秃之路(四) Go语言头秃之路(五) Go语言头秃之路(六) Go语言头秃之路(七) 各种基础语句 cons ...

  9. 极速Go语言入门(超全超详细)-基础篇

    文章目录 文章目录 Golang概述 Go语言三大牛 谷歌创造Golang的原因 Golang 的发展历程 Golang 的语言的特点 Go语言开发工具 Go开发环境配置(sdk下载及配置) 使用开发 ...

  10. mysql switch binlog_如何使用 Golang 处理 MySQL 的 binlog

    大家好,我是 Artem,一名 Golang 开发.我们的团队花费了大量时间训练 MySQL binlog.这里整合一些简单用法,不会放过任何隐藏的陷阱.示例代码将在最后显示. 每次从 数据库 查询的 ...

最新文章

  1. Value xxx of type org.json.JSONObject cannot be converted to JSONArray
  2. 第十六届全国大学生智能汽车竞赛RT-Thread创新专项奖
  3. 中国自主研制出的速度最高的巨型计算机是,2018年,中国自主研制出的速度最高的巨型计算机是。...
  4. python装饰器类-Python 装饰器装饰类中的方法
  5. 在中国Windows Azure服务中创建应用程序的一些不同之处
  6. docker 不包含依赖 打包_从零开始学K8s: 4.Docker是什么
  7. php和python和javascript_Node.js与PHP、Python的字符处理性能对比
  8. php查询排序,php如何对查询结果集进行排序
  9. python getattr用法_python3,定制类,getattr相关用法
  10. request获取各种路径
  11. arduino cc3000 php,【arduino】新手求助, 想问一下关於CC3000设置的问题
  12. 淘宝商城事件:中小卖家缺失的互联网信任
  13. 如何更电计算机共享名称,电脑网络共享设置
  14. Detected outdated SDK Tools version 0.0.0 when the min version is XXX
  15. Spring Cloud在国内中小型公司能用起来吗?
  16. win10自带虚拟机的窗口太小的调整办法,亲测有效
  17. 入手python难不难_Python难不难?容易学吗?
  18. 计算机应用的知识能力和素质,信息素质与计算机应用能力
  19. 人工神经网络的发展现状,神经网络未来发展趋势
  20. Excel如何打开两个独立窗口

热门文章

  1. localhost与127.0.0.1
  2. ioredis自定义函数以及在ts声明文件库添加声明
  3. [LK光流法,disflow using Dense Inverse Search, VariationalRefinement变分优化 原理和代码]
  4. mysql的grant用法
  5. CentOS7 查询版本/CPU/内存/硬盘容量等命令
  6. mysql 文本挖掘_GitHub - HuiHuiT/dianping_textmining: 大众点评评论文本挖掘,包括点评数据爬取、数据清洗入库、数据分析、评论情感分析等的完整挖掘项目...
  7. flutter在导航栏处实现对两个列表的点击事件
  8. 《羊年展望》中国改革蹄疾经济求稳 新思维应对新常态
  9. opencv 锐化 java_Java Opencv 实现锐化
  10. Tomcat是什么东西?