switch是最靈活的一種控制語句,在使用switch時候,需要注意:
網站建設哪家好,找創新互聯!專注于網頁設計、網站建設、微信開發、微信小程序定制開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了鼓樓免費建站歡迎大家使用!
--左花括號"{"必須與switch處于同一行
--條件表達式不限制為常量或者整數
--單個case中,可以出現多個結果選項
--與C語言等規則相反,G0語言不需要break來明確退出一個case
--只有在case中明確添加fallthrough關鍵字,才會繼續執行緊跟的下一個case
--可以不設定switch之后的條件表達式,在此種情況下,整個switch結構與多個if....else的邏輯作用等同
--可以有任意數量的case語句在switch內,每個case后跟值進行比較,以及一個冒號
--在switch語句中使用的表達式必須具有整體或布爾表達式,或者是一個類型,如果表達式不通過,默認值為true
--constant-expression的情況,必須是相同的數據類型,在switch的變量,它必須是一個常量或文字
--switch語句可有一個可選的default,它必須出現在switch語句的末尾,default可用于在沒有任何case為真時執行任務,default之后不需要break語句
流程圖
egg1:
package main
import "fmt"
func main() {
var grade string = "A"
switch {
case grade == "A":
fmt.Printf("Good....\n")
case grade == "B":
fmt.Printf("Well Done....\n")
case grade == "C":
fmt.Printf("Ok....")
default:
fmt.Printf("iNVALID grade....\n")
}
fmt.Printf("Your grade is %s\n", grade)
}
egg2:
package main
import "fmt"
func main() {
switch a := 1; {
case a >= 0:
fmt.Printf("a>=0")
fallthrough //如果不加這個只會打印a>=0,不會執行后面的a>=1的語句,若要讓每個case都判斷,都要在case 后面加 fallthrough
case a >= 1:
fmt.Printf("a=1")
default:
fmt.Printf("not found...")
}
}
##需要注意的是跟在switch屬于局部的變量,只能在內部實現訪問,若要全局必須在switch外部
網頁標題:go語言switch語句用法
URL地址:http://vcdvsql.cn/article14/podhde.html
成都網站建設公司_創新互聯,為您提供搜索引擎優化、營銷型網站建設、網站設計、品牌網站建設、網站策劃、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯