濮阳杆衣贸易有限公司

主頁 > 知識庫 > go語言中fallthrough的用法說明

go語言中fallthrough的用法說明

熱門標(biāo)簽:外呼系統(tǒng)顯本地手機(jī)號 阿克蘇地圖標(biāo)注 外呼系統(tǒng)用什么卡 excel地圖標(biāo)注分布數(shù)據(jù) 評價高的400電話辦理 電話機(jī)器人軟件免費(fèi) 涿州代理外呼系統(tǒng) 百度地圖標(biāo)注后傳給手機(jī) 壽光微信地圖標(biāo)注

fallthrough:Go里面switch默認(rèn)相當(dāng)于每個case最后帶有break,匹配成功后不會自動向下執(zhí)行其他case,而是跳出整個switch, 但是可以使用fallthrough強(qiáng)制執(zhí)行后面的case代碼。

示例程序1:

switch {
    case false:
        fmt.Println("The integer was = 4")
        fallthrough
    case true:
        fmt.Println("The integer was = 5")
        fallthrough
    case false:
        fmt.Println("The integer was = 6")
        fallthrough
    case true:
        fmt.Println("The integer was = 7")
        fallthrough
    case false:
        fmt.Println("The integer was = 8")
    default:
        fmt.Println("default case")
    }

輸出結(jié)果:

The integer was = 5

The integer was = 6

The integer was = 7

The integer was = 8

問題:是否在switch最后一個分支使用fallthrough???

有錯誤提示,顯示:cannot fallthrough final case in switch

fallthrough不能用在switch的最后一個分支。

示例程序2:

上述示例是true、false常量進(jìn)行分支判斷,看如下變量示例。

s := "abcd"
    switch s[1] {
    case 'a':
        fmt.Println("The integer was = 4")
        fallthrough
    case 'b':
        fmt.Println("The integer was = 5")
        fallthrough
    case 'c':
        fmt.Println("The integer was = 6")
    default:
        fmt.Println("default case")
    }

輸出結(jié)果如下:

The integer was = 5

The integer was = 6

更改為:

s := "abcd"
    switch s[3] {
    case 'a':
        fmt.Println("The integer was = 4")
        fallthrough
    case 'b':
        fmt.Println("The integer was = 5")
        fallthrough
    case 'c':
        fmt.Println("The integer was = 6")
    default:
        fmt.Println("default case")
    }

輸出:

default case

總結(jié):

switch分支中使用變量進(jìn)行判斷的時,fallthrough正確的分支開始其作用。

補(bǔ)充:【踩坑】golang的fallthrough大坑

加了fallthrough后,會直接運(yùn)行【緊跟的后一個】case或default語句,不論條件是否滿足都會執(zhí)行,后面的條件并不會再判斷了,?

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • Golang 編譯成DLL文件的操作
  • golang調(diào)用c實(shí)現(xiàn)的dll接口細(xì)節(jié)分享
  • Golang如何調(diào)用windows下的dll動態(tài)庫中的函數(shù)
  • go mod 使用私有g(shù)itlab群組的解決方案
  • django將圖片保存到mysql數(shù)據(jù)庫并展示在前端頁面的實(shí)現(xiàn)
  • golang實(shí)踐-第三方包為私有庫的配置方案
  • 解決go mod私有倉庫拉取的問題

標(biāo)簽:汕頭 吐魯番 梅河口 雞西 欽州 蘭州 重慶 銅川

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《go語言中fallthrough的用法說明》,本文關(guān)鍵詞  語,言中,fallthrough,的,用法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《go語言中fallthrough的用法說明》相關(guān)的同類信息!
  • 本頁收集關(guān)于go語言中fallthrough的用法說明的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    丰原市| 伊宁市| 景东| 嘉义市| 绵竹市| 固镇县| 威宁| 顺昌县| 宾阳县| 黑龙江省| 南陵县| 仁化县| 邵武市| 巨鹿县| 彰武县| 台前县| 罗源县| 荆州市| 湘乡市| 涟源市| 海丰县| 黎平县| 吴堡县| 金塔县| 太和县| 新营市| 花莲市| 元谋县| 齐河县| 顺昌县| 静安区| 台州市| 洪雅县| 泰兴市| 古蔺县| 汕尾市| 顺昌县| 九江市| 蕲春县| 彭州市| 工布江达县|