溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

go語言switch語句用法

發布時間:2020-10-02 11:07:03 來源:網絡 閱讀:605 作者:DBAspace 欄目:編程語言

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語句

流程圖

go語言switch語句用法

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外部

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女