成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網
最全最豐富的資訊網站

golang流程控制語句有哪些

流程控制語句:1、if語句,由一個布爾表達式后緊跟一個或多個語句組成;2、“if…else”語句,else中的表達式在布爾表達式為false時執行;3、switch語句,用于基于不同條件執行不同動作;4、select語句;5、for循環語句,語法“for k,v := range oldmap{newmap[k]=v}”;6、循環控制語句break、continue、goto。

golang流程控制語句有哪些

本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

下面我們了解一下關于golang流程控制語句的基本內容。

1、條件分支語句

和c語言類似,相關的條件語句如下表所示:

語句 描述
if 語句 if 語句 由一個布爾表達式后緊跟一個或多個語句組成。
if…else 語句 if 語句 后可以使用可選的 else 語句, else 語句中的表達式在布爾表達式為 false 時執行。
switch 語句 switch 語句用于基于不同條件執行不同動作。
select 語句 select 語句類似于 switch 語句,但是select會隨機執行一個可運行的case。如果沒有case可運行,它將阻塞,直到有case可運行。
  • if語句
    語法如下:

if 布爾表達式 {    /* 在布爾表達式為 true 時執行 */ }
登錄后復制

  • if-else語句

if 布爾表達式 {    /* 在布爾表達式為 true 時執行 */ } else { 	/* 在布爾表達式為 false 時執行 */ }
登錄后復制

  • switch語句
    其中的變量v可以是任何類型,val1val2可以是同類型的任意值,類型不局限為常量或者整數,或者最終結果為相同類型的表達式。

switch v {     case val1:         ...     case val2:         ...     default:         ... }
登錄后復制

  • select語句
    select 是 Go 中的一個控制結構,類似于用于通信的 switch 語句。每個 case 必須是一個通信操作,要么是發送要么是接收。它將會隨機執行一個可運行的 case。如果沒有 case 可運行,它將阻塞,直到有 case 可運行。一個默認的子句應該總是可運行的。

select {     case communication clause  :        statement(s);           case communication clause  :        statement(s);     /* 你可以定義任意數量的 case */     default : /* 可選 */        statement(s); }
登錄后復制

注意:

  • 每個case必須都是一個通信
  • 所有channel表達式都會被求值,所有被發送的表達式都會被求值
  • 如果任意某一個通信都可以,它就執行,其他就忽略
  • 如果有多個case都可以運行,select就會隨機挑選一個來執行。
  • 如果沒有一個case可以被運行:如果有default子句,就執行default子句,select將被阻塞,直到某個通信可以運行,從而避免饑餓問題。

2、循環語句

2.1 循環處理語句

與多數語言不同的是,Go語言中的循環語句只支持 for 關鍵字,而不支持 while 和 do-while 結構,關鍵字 for 的基本使用方法與C語言和 C++ 中非常接近。

go中時使用for實現循環的,共有三種形式:

語法
和c語言中的for相同 for init; condition; post {}
和c語言中的while相同 for condition{}
和c語言中的for(;;)相同 for{}

除此以外,for循環還可以直接使用range對slice、map、數組以及字符串等進行迭代循環,格式如下:

for key, value := range oldmap { 	newmap[key] = value }
登錄后復制

2.2 循環控制語句

控制語句 詳解
break 中斷跳出循環或者switch語句
continue 跳過當前循環的剩余語句,然后繼續下一輪循環
goto語句 將控制轉移到被標記的語句

1、break

break主要用于循環語句跳出循環,和c語言中的使用方式是相同的。且在多重循環的時候還可以使用label標出想要break的循環。
實例代碼如下:

a := 0 for a<5 { 	fmt.Printf("%dn", a) 	a++ 	if a==2 { 		break; 	} } /* output 0 1 2 */
登錄后復制

2、continue

Go 語言的 continue 語句 有點像 break 語句。但是 continue 不是跳出循環,而是跳過當前循環執行下一次循環語句。在多重循環中,可以用標號 label 標出想 continue 的循環。
實例代碼如下:

    // 不使用標記     fmt.Println("---- continue ---- ")     for i := 1; i <= 3; i++ {         fmt.Printf("i: %dn", i)             for i2 := 11; i2 <= 13; i2++ {                 fmt.Printf("i2: %dn", i2)                 continue             }     }  /* output i: 1 i2: 11 i2: 12 i2: 13 i: 2 i2: 11 i2: 12 i2: 13 i: 3 i2: 11 i2: 12 i2: 13 */      // 使用標記     fmt.Println("---- continue label ----")     re:         for i := 1; i <= 3; i++ {             fmt.Printf("i: %d", i)                 for i2 := 11; i2 <= 13; i2++ {                     fmt.Printf("i2: %dn", i2)                     continue re                 }         }  /* output i: 1 i2: 11 i: 2 i2: 11 i: 3 i2: 11 */
登錄后復制

3、goto

goto語句主要是無條件轉移到過程中指定的行。goto語句通常和條件語句配合使用,可用來實現條件轉移、構成循環以及跳出循環體等功能。但是并不主張使用goto語句,以免造成程序流程混亂。
示例代碼如下:

var a int = 0 LOOP: for a<5 { 	if a == 2 { 		a = a+1 		goto LOOP 	} 	fmt.Printf("%dn", a) 	a++ }  /* output: 0 1 2 3 4 */
登錄后復制

以上代碼中的LOOP就是一個標簽,當運行到goto語句的時候,此時執行流就會跳轉到LOOP標志的哪一行上。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
NARUTOMANGA无尽纲手| 丰满人妻一区二区三区Aⅴ在线 | 天堂BT种子在线最新版资源| 婷婷成人丁香五月综合激情| 亚洲AV成人综合网成人| 久久久精品国产免大香伊| 看黄A大片爽爽爽不打码| 护士猛少妇色XXⅩXXX猛叫| 国产丰满麻豆HDXVIDEOS| 菠萝菠萝蜜在线观看| 各种女BBWBBWBBW么| 国内揄拍国内精品| 麻花传媒MV在线播放高清MBA | 亚洲av成人一区| 一区蜜桃中文不卡在线| 扒掉内裤露出打嫩嫩的屁股| 国产极品美女高潮无套APP| 狠狠色丁香久久综合婷婷| 乱码一卡二卡新区永久入口| 日本丰满熟妇人妻aqq| 无码男男作爱G片在线观看| 亚洲色国产欧美日韩| JAPANESE国产永久| 国产精品久久久久久一区二区三区| 回民丰满少妇XXX性| 内射人妻无码色AV无码| 四虎影视新紧急入口| 亚洲精品欧美精品日韩精品 | 人妻系列无码专区免费视频| 欧美粗大强交18P直喷水| 女人ASS人体下部PICS| 少妇性饥渴XXⅩXXHD| 亚洲国产欧美在线人成AAAA| AV片在线观看免费| 国产欧美在线观看不卡| 蜜臀av一区二区三区人妻| 他的舌头探入蜜源毛毛虫说说| 亚洲人成色777777精品音频| 爱丫爱丫影院电视剧| 黑人高潮拔也拔不出来| 欧美性生交XXXXX久久久| 秋霞国产午夜伦午夜福利片 | 在线观看无码AV网站永久| 粉嫩小泬久久久久久久久久小说| 精品熟女少妇AV免费观看| 日本人妻和黑人又粗又长又黄 | 狠狠综合久久久久综合网站| 欧美精品多人P群无码| 亚洲AV无码成H人在线观看| AV天堂东京热无码专区| 好大好深好猛好爽视频免费| 屁屁草草影院CCYYCOM| 亚洲国产精品久久久久制服 | 国语对白做受XXXXX在| 欧美最猛性XXXXX大叫| 亚洲AV人人澡人人爽人人夜夜| YSL千人千色T9T9T9最新| 精品韩国亚洲AV无码不卡区| 老师上课没戴奶罩看到奶头| 挺进大幂幂的滋润花苞御女天下| 中文无码乱人伦中文视频在线V| 国产精品无码一区二区三区在 | 嗯~别停~用力点~再快点| 久久久久久久精品免费看 | 国产真人无码作爱视频免费 | 亚洲综合熟女久久久40P| 夫妇交换聚会群4P疯狂大战| 门卫老头吮她的花蒂| 亚洲AV成人片无码网站网| 被几个人摁住玩弄隐私作文| 久久婷婷色综合老司机| 秋霞午夜久久午夜精品| 亚洲熟妇AV一区二区三区宅男| 丰满少妇被猛烈进入无码| 免费无码不卡视频在线观看| 日韩AV无码一区二区三区不卡| 又粗又黄又猛又爽大片APP | 学生无码AV一区二区三区| 亚洲中文字幕无码第一区| 国产精品久久久久久久久久久不卡| 女生会把隐私透露给异性朋友| 亚洲精品国产成人99久久6| 国产AV激情无码久久| 欧美人和黑人牲交网站上线| 亚洲中文字幕永久在线不卡| 国产偷久久久精品专区| 蜜桃视频一区二区三区| 亚洲国产综合无码一区| 国产高清免费AV片在线观看不卡| 欧洲无线一线二线三W955| 一本一道AV中文字幕无码| 国产综合久久亚洲综合| 特大肥女BBWASS| 被老外添嫩苞添高潮NP电影| 免费无码又爽又刺激毛片| 亚洲熟妇AV一区二区三区| 国产偷国产偷亚洲高清人| 撕开奶罩揉吮奶头视频| 成 人 免费 黄 色 网站视频| 男生和女生在一起差差差| 医院人妻闷声隔着帘子被中出| 精品久久免费一区二区三区四区| 无码一区二区三区在线观看| 中文字幕人妻丝袜乱一区三区| 国产高清一区二区三区视频| 日本爆乳片手机在线播放| APPSTORE美区免费| 男女交性视频无遮挡全过程| 伊人天天久大香线蕉AV色| 精品深夜av无码一区二区老年| 亚洲AV成人片色在线高潮| 国产精品亚洲片在线| 婷婷丁香五月深爱憿情网| 纯肉的日本动漫 在线看| 久久久久夜色精品国产| 亚洲欧美成人在线| 各种女BBWBBWBBW么| 日韩欧美群交P内射捆绑| YYYY1111111午夜少妇| 欧美精品AⅤ一区二区三区| 最新国产精品拍自在线观看 | 国产在线无码免费网站永久| 午夜无码视频在线观看网站| 国产精品久久久亚洲| 无码国产精品一区二区免费I6| 国产SUV精品一区二区| 少妇性SEXBBWZⅩX| 国产AV导航大全精品| 玩弄丰满熟妇XXXXX性HD| 国产成人亚洲综合无码DVD| 特黄熟妇丰满人妻无码| 国产精品久久久久精品A级| 无码精品一区二区三区视频色欲网 | 欧美老熟妇乱大交XXXXX| YASEE在线2021| 色偷偷偷久久伊人大杳蕉| 国产94在线 | 亚洲| 无码国产玉足脚交久久2020| 国产日产欧产精品精品AI| 亚洲AV无码成H人在线观看| 精品国产一二三产品区别在哪| 亚洲午夜性春猛交XXXX亚训| 老男人吃奶疯狂啃肿奶头| 中国熟妇色XXXXX| 欧美内射潮喷一区二虎| 宝宝锕~进去就不痛了在线观看| 色妞WW精品视频7777| 国产精品无码一二区免费| 亚洲GV永久无码天堂网 | 亚洲日韩欧洲无码A∨夜夜| 浪荡人妻共32部黑人大凶器电影| 2019在线人妻中文字幕| 人妻巨大乳HD免费看| 国产A∨精品一区二区三区不卡| 午夜精品一区二区三区免费视频| 狠狠躁夜夜躁人人爽天天BL | 亚洲AV永久无码精品一区二区不| 九九九精品成人免费视频小说| 岳把腿扒开让我添| 人妻少妇精品无码专区| 国产精品久久久久9999小说| 亚洲丰满熟女一区二区V| 久久综合婷婷成人网站| AV天堂东京热无码专区| 四川丰满少妇A级毛片| 娇小VIDEOS出血| 80S电影天堂在线| 四虎影视1304T| 精品无码三级在线观看视频| 91人妻人人澡人人爽| 牲交A欧美牲交AⅤ免费一| 狠狠人妻久久久久久综合蜜桃| 中国女人内射6XXXXXWWW| 日韩精品无码观看视频免费| 国产精品无码午夜福利| 伊人久久大香线焦AV色 | 亚洲国产成人久久一区WWW| 免费国内接码在线接收| 国产AV天堂亚洲国产AV麻豆| 亚洲国产另类久久久精品| 女人被狂躁高潮啊的视频在线看| 丰满岳乱妇在线观看中字无码| 亚洲精华液一二三产区| 欧美性大战久久久久久| 国产欧洲野花A级| 综合无码一区二区三区| 特级西西人体444WWW高清大| 久久精品国产大片免费观看| 亚洲人成小说网站色在线观看| 欧美裸体XXXX| 国产亚洲大尺度无码无码专线 | 国产女人被躁到高潮的AV| 在线日韩日本国产亚洲| 四川老妇山边性对白| 久久五月丁香中文字幕| 丰满浓毛的大隂户自慰| 夜里18款禁用B站入APP软件| 日日噜噜夜夜爽爽| 国产精品视频一区二区| 12孩岁女A处破娇小|