golang switch语句的灵活写法介绍
作者:冷月醉雪 时间:2024-04-23 09:39:49
switch是很容易理解的,先来个代码,运行起来
看看你的操作系统是什么吧
package main
import (
"fmt"
"runtime"
)
func main() {
fmt.Print("Go runs on ")
switch os := runtime.GOOS; os {
case "darwin":
fmt.Println("OS X.")
case "linux":
fmt.Println("Linux.")
default:
fmt.Printf("%s", os)
}
}
runtine运行时获取当前的操作系统,使用GOOS。还和if for之类的习惯一样,可以在前面声明赋值变量。我们就在这里来获取操作系统的信息了。
os := runtime.GOOS;
{}里的case比较容易理解。操作系统是 "darwin" 就打印"OS X.";操作系统是 "linux" 就打印"Linux";其他的都直接打印系统类别。
在go语言的switch中除非以fallthrough语句结束,否则分支会自动终止。
所以修改一下上面的代码,再运行一下:
package main
import (
"fmt"
"runtime"
)
func main() {
fmt.Print("Go runs on ")
switch os := runtime.GOOS; os {
case "darwin":
fmt.Println("OS X.")
case "linux":
fmt.Println("Linux.")
case "windows":
fmt.Println("win")
fallthrough
default:
fmt.Printf("%s", os)
}
}
增加了当前的系统的case选项"windows",还在这个分支使用了fallghrough。
如果你再注释掉 fallthrough,或干脆删除 fallthrough,再运行,就会发现,那个穿透的效果没有了。
来源:https://blog.csdn.net/lengyuezuixue/article/details/79351269
标签:golang,switch
0
投稿
猜你喜欢
Python操作MySQL模拟银行转账
2022-05-19 21:23:11
JavaScript match() 方法
2007-11-04 13:28:00
Python的numpy库中将矩阵转换为列表等函数的方法
2021-06-19 12:18:21
MySQL ALTER命令使用详解
2024-01-18 09:40:23
提供效率的几个ASP编程技巧
2010-05-03 11:11:00
利用laravel+ajax实现文件上传功能方法示例
2024-05-03 15:28:02
MySQL修改默认字符集
2010-11-02 12:11:00
Python3实现对列表按元组指定列进行排序的方法分析
2022-10-05 18:01:13
判断 iframe 是否加载完成的完美方法
2009-09-24 13:35:00
条件注释使用指南[译]
2009-03-23 17:41:00
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
2022-05-22 21:51:51
layerUI下的绑定事件实例代码
2024-04-16 09:38:08
python进程管理工具supervisor的安装与使用教程
2023-10-15 20:41:57
细化解析:怎样把你的MySQL完全中文化
2008-12-19 17:48:00
vue后台管理添加多语言功能的实现示例
2024-04-29 13:08:22
Pycharm Git 设置方法
2023-07-13 17:02:55
一小时学会TensorFlow2之Fashion Mnist
2023-01-27 12:08:16
Vue路由的懒加载深入详解
2024-05-28 16:03:58
利用Matlab绘制各类特殊图形的实例代码
2021-01-05 21:10:31
深入浅析Django MTV模式
2021-08-18 07:55:32