欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Go語言中的switch用法實例分析

 更新時間:2015年02月26日 10:22:34   作者:不是JS  
這篇文章主要介紹了Go語言中的switch用法,實例分析了switch的功能及使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了Go語言中的switch用法。分享給大家供大家參考。具體分析如下:

這里你可能已經(jīng)猜到 switch 可能的形式了。
case 體會自動終止,除非用 fallthrough 語句作為結(jié)尾。

復制代碼 代碼如下:
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 的條件從上到下的執(zhí)行,當匹配成功的時候停止。

(例如,

switch i {
case 0:
case f():
}
當 i==0 時不會調(diào)用 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 一樣。

這一構(gòu)造使得可以用更清晰的形式來編寫長的 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語言程序設計有所幫助。

相關(guān)文章

  • 基于Go語言實現(xiàn)的簡易api網(wǎng)關(guān)的示例代碼

    基于Go語言實現(xiàn)的簡易api網(wǎng)關(guān)的示例代碼

    本文主要介紹了基于Go語言實現(xiàn)的簡易api網(wǎng)關(guān),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Go語言中獲取IP地址的方法詳解

    Go語言中獲取IP地址的方法詳解

    這篇文章主要為大家詳細介紹了Go語言中獲取IP地址的相關(guān)方法,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-11-11
  • Go基礎(chǔ)教程系列之defer、panic和recover詳解

    Go基礎(chǔ)教程系列之defer、panic和recover詳解

    這篇文章主要介紹了Go基礎(chǔ)教程系列之defer、panic和recover,需要的朋友可以參考下
    2022-04-04
  • Go語言學習之Switch語句的使用

    Go語言學習之Switch語句的使用

    這篇文章主要通過一些示例為大家介紹一下Go語言中Switch語句的基本語法以及使用,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2022-06-06
  • MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法

    MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法

    這篇文章主要介紹了MacOS中 VSCode 安裝 GO 插件失敗問題的快速解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • 詳解golang開發(fā)中select多路選擇

    詳解golang開發(fā)中select多路選擇

    這篇文章主要介紹了golang開發(fā)中select多路選擇,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • golang Goroutine超時控制的實現(xiàn)

    golang Goroutine超時控制的實現(xiàn)

    日常開發(fā)中我們大概率會遇到超時控制的場景,比如一個批量耗時任務、網(wǎng)絡請求等,本文主要介紹了golang Goroutine超時控制的實現(xiàn),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2023-09-09
  • GoLand編譯帶有構(gòu)建標簽的程序思路詳解

    GoLand編譯帶有構(gòu)建標簽的程序思路詳解

    這篇文章主要介紹了GoLand編譯帶有構(gòu)建標簽的程序,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • go單體日志采集zincsearch方案實現(xiàn)

    go單體日志采集zincsearch方案實現(xiàn)

    這篇文章主要為大家介紹了go單體日志采集zincsearch方案實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 一百行Golang代碼實現(xiàn)簡單并發(fā)聊天室

    一百行Golang代碼實現(xiàn)簡單并發(fā)聊天室

    這篇文章主要為大家詳細介紹了一百行Golang代碼如何實現(xiàn)簡單并發(fā)聊天室,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08

最新評論