Go语言中的switch用法实例分析

作者:不是JS 时间:2024-04-23 09:39:06 

本文实例讲述了Go语言中的switch用法。分享给大家供大家参考。具体分析如下:

这里你可能已经猜到 switch 可能的形式了。
case 体会自动终止,除非用 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.")
 default:
  // freebsd, openbsd,
  // plan9, windows...
  fmt.Printf("%s.", os)
 }
}

switch 的条件从上到下的执行,当匹配成功的时候停止。

(例如,

switch i {
case 0:
case f():
}
当 i==0 时不会调用 f。)

package main
import (
 "fmt"
 "time"
)
func main() {
 fmt.Println("When's Saturday?")
 today := time.Now().Weekday()
 switch time.Saturday {
 case today+0:
  fmt.Println("Today.")
 case today+1:
  fmt.Println("Tomorrow.")
 case today+2:
  fmt.Println("In two days.")
 default:
  fmt.Println("Too far away.")
 }
}

没有条件的 switch 同 switch true 一样。

这一构造使得可以用更清晰的形式来编写长的 if-then-else 链。

package main
import (
 "fmt"
 "time"
)
func main() {
 t := time.Now()
 switch {
 case t.Hour() < 12:
     fmt.Println("Good morning!")
 case t.Hour() < 17:
     fmt.Println("Good afternoon.")
 default:
     fmt.Println("Good evening.")
 }
}

希望本文所述对大家的Go语言程序设计有所帮助。

标签:Go语言,switch,用法
0
投稿

猜你喜欢

  • react redux及redux持久化示例详解

    2023-07-17 07:18:53
  • python抽取指定url页面的title方法

    2022-11-15 21:52:40
  • python实现备份目录的方法

    2022-10-30 02:54:04
  • 如何利用python正确地为图像添加高斯噪声

    2023-08-03 08:26:22
  • .Net Core下使用Dapper的方法

    2023-07-16 17:19:17
  • SQLServer2019配置端口号的实现

    2024-01-28 22:29:52
  • Python列表list的详细用法介绍

    2021-04-17 06:56:15
  • Python写的服务监控程序实例

    2022-09-01 13:12:31
  • Python基类函数的重载与调用实例分析

    2021-03-02 21:28:30
  • python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图

    2023-09-06 10:45:28
  • Python算法的时间复杂度和空间复杂度(实例解析)

    2022-09-26 03:07:06
  • Python Selenium截图功能实现代码

    2021-10-11 09:14:19
  • python调用windows api锁定计算机示例

    2021-09-08 03:28:38
  • python3库numpy数组属性的查看方法

    2023-07-19 07:25:50
  • 在Django的模型中执行原始SQL查询的方法

    2022-12-21 17:24:40
  • Python实现连接MySql数据库及增删改查操作详解

    2024-01-14 10:40:36
  • TinkerPop框架查询Gremlin图实现过程详解

    2024-01-29 11:26:45
  • PyQt5 PySide2 触摸测试功能的实现代码

    2022-06-23 22:22:25
  • Python与Matlab混合编程的实现案例

    2023-01-14 14:44:39
  • Python实现读取字符串按列分配后按行输出示例

    2023-08-07 19:39:14
  • asp之家 网络编程 m.aspxhome.com