Go語言之fo循環(huán)與條件判斷
一、for循環(huán)
Go 語言中沒有 while
循環(huán),只有一個(gè) for
循環(huán)
for 變量初始化;條件;變量自增/自減 { 循環(huán)體內(nèi)容 }
1、基本使用
for i := 0; i < 10; i++ { fmt.Println(i) }
2、省略第一部分
i := 0 for ; i < 10; i++ { fmt.Println(i) }
3、省略第一和三部分(這是一個(gè) while 循環(huán)) for 條件 { 循環(huán)體內(nèi)容 }
i := 0 for i < 10 { fmt.Println(i) i++ }
4、死循環(huán)
for { fmt.Println("死循環(huán)") }
5、開多協(xié)程演示
for i := 0; i < 2000; i++ { go test() } func test() { for { fmt.Println("死循環(huán)") } }
6、break
結(jié)束本次 for 循環(huán),continue 結(jié)束本次循環(huán),繼續(xù)下一次循環(huán)
二、Switch語句
Switch
是一個(gè)條件語句,用于將表達(dá)式的值與可能匹配的選項(xiàng)列表進(jìn)行比較,并根據(jù)匹配情況執(zhí)行相應(yīng)的代碼塊,它可以被認(rèn)為是替代多個(gè) if else
語句的常用方式
1、基本使用
num := 4 switch num { case 1: fmt.Println("1") case 2: fmt.Println("2") case 3: fmt.Println("3") case 4: fmt.Println("4") } // 輸出 4
2、默認(rèn)情況(都沒有匹配上)
num := 5 switch num { case 1: fmt.Println("1") case 2: fmt.Println("2") case 3: fmt.Println("3") case 4: fmt.Println("4") default: fmt.Println("都沒有匹配上") } // 輸出 都沒有匹配上
3、多表達(dá)式判斷
num := 44 switch num { case 11, 12, 13, 14: fmt.Println("1") case 21, 22: fmt.Println("2") case 31, 33: fmt.Println("3") case 40, 43, 44: fmt.Println("4") default: fmt.Println("都沒有匹配上") } // 輸出 4
4、無表達(dá)式的 Switch
num := 44 switch { case num == 11, num == 12: fmt.Println(11, 12) case num == 40, num == 44: fmt.Println(40, 44) } // 輸出 40 44
5、Fallthrough
穿透,只要看到
fallthrough
,無條件執(zhí)行下一個(gè)case
或者default
num := 12 switch { case num == 11, num == 12: fmt.Println(11, 12) fallthrough case num == 40, num == 44: fmt.Println(40, 44) fallthrough default: fmt.Println("無匹配") } // 輸出 11 12 40 44 無匹配
到此這篇關(guān)于Go語言之fo循環(huán)與條件判斷的文章就介紹到這了,更多相關(guān)Go語言循環(huán)與條件判斷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang RSA生成密鑰、加密、解密、簽名與驗(yàn)簽的實(shí)現(xiàn)
RSA 是最常用的非對稱加密算法,本文主要介紹了Golang RSA生成密鑰、加密、解密、簽名與驗(yàn)簽的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-11-11詳解golang開發(fā)中http請求redirect的問題
這篇文章主要介紹了詳解golang開發(fā)中http請求redirect的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10解決golang處理http response碰到的問題和需要注意的點(diǎn)
這篇文章主要介紹了解決golang處理http response碰到的問題和需要注意的點(diǎn),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Golang Gorm實(shí)現(xiàn)自定義多態(tài)模型關(guān)聯(lián)查詢
GORM 是一個(gè)流行的開源 ORM (Object-Relational Mapping) 庫,專為 Go 語言設(shè)計(jì),它簡化了與 SQL 數(shù)據(jù)庫的交互,GORM 封裝了數(shù)據(jù)庫操作,使得開發(fā)者能夠通過簡單的鏈?zhǔn)秸{(diào)用來執(zhí)行 CRUD,本文給大家介紹了Golang Gorm實(shí)現(xiàn)自定義多態(tài)模型關(guān)聯(lián)查詢,需要的朋友可以參考下2024-11-11