Go語言中的switch用法實例分析
本文實例講述了Go語言中的switch用法。分享給大家供大家參考。具體分析如下:
這里你可能已經猜到 switch 可能的形式了。
case 體會自動終止,除非用 fallthrough 語句作為結尾。
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 時不會調用 f。)
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 鏈。
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語言實現(xiàn)WebAssembly數(shù)據(jù)加密的示例講解
在Web開發(fā)中,有時候為了提升安全性需要對數(shù)據(jù)進行加密,由于js代碼相對比較易讀,直接在js中做加密安全性較低,而WebAssembly代碼不如js易讀,本文提供一個用go語言實現(xiàn)的WebAssembly數(shù)據(jù)加密示例,需要的朋友可以參考下2024-03-03
golang常用庫之操作數(shù)據(jù)庫的orm框架-gorm基本使用詳解
這篇文章主要介紹了golang常用庫之操作數(shù)據(jù)庫的orm框架-gorm基本使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10
在ubuntu下安裝go開發(fā)環(huán)境的全過程
Go語言是谷歌公司開發(fā)的編程語言,雖然安裝和配置go很簡單,但是很多初學者在第一次安裝go環(huán)境時會遇到各種坑,下面這篇文章主要給大家介紹了關于在ubuntu下安裝go開發(fā)環(huán)境的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2022-08-08
golang中使用proto3協(xié)議導致的空值字段不顯示的問題處理方案
這篇文章主要介紹了golang中使用proto3協(xié)議導致的空值字段不顯示的問題處理方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10

