golang 流程控制

2021-08-21 03:32:29 字數 1409 閱讀 2390

[toc]

golang提供了下面幾個關鍵字:if/elseforswitch/case/fallthroughselectbreakcontinuegoto等,實現程式的分支控制,並且賦予它們不同的用法。在本節中我們會重點討論除了select的其他關鍵字,select會放在併發和通訊的時候提到。

golang的分支語句的關鍵字為if/elseswitch/case/fallthroughselect後者會在併發和通訊的時候提到。

乙個if/else的語法如下:

if optionalstatement1; booleanexep  else

if optionalstatement2; booleanexep else

其中optionalstatement1是乙個可選的表示式:

if

a := addsomething(); a //上面的**等價於下面

a := addsomething()

ifa

switch語句

golang的switch語句相較於c/c++有幾點不同:首先它的case語句支援任意可比較的型別、其次是case語句不會自動向下執行,最後switch支援資料型別表示式的用法。

對於迴圈控制,golang僅提供了for語句,但是賦予了其更加靈活的用法,足以滿足需求:

for 

for booleanexp

for optionalstatement1; booleanexp

for index, char := range astring

for char := range astring

for index, item := range anarrorslice

for item := range anarrorslice

for key, value := range anmap

for key := range anmap

for item := range channels

對於breakcontinuegoto,分別用於進行迴圈控制使用,滿足一定條件跳出迴圈、結束本次迴圈以及跳轉到指定位置。

Golang 流程控制

package main import fmt func main else if age 18 變數寫在條件中,不會對全域性有影響 if age2 18 age2 18else if age2 18 package main import fmt func main 忽略初始語句 需要提前宣告 i...

golang 流程控制

3.迴圈結構 1 無返回型別 2 有返回型別 流程控制 主要是三大流程控制流程控制語句 1 順序控制 2 分支控制 3 迴圈控制 程式從上到下逐行地執行,中間沒有任何判斷和跳轉。注意基本語法 if 條件表示式 條件表示式為true時,就會執行的 注意是必須有的,就算你值寫一行 golang支援在if...

Golang基礎 流程控制

package main import fmt func main package main import fmt 單分支控制 func main package main import fmt func main package main import fmt 多分支控制 多分支只能有乙個執行入口...