Go筆記 流程控制

2022-04-29 18:57:06 字數 1252 閱讀 3975

【if】

if 是用於測試某個條件的語句,如果該條件(邏輯型或布林型)成立,則會執行大括號內的**,第乙個大括號必須和if 或者else同行,否則非法

1 //方式12if

condition

5 //方式26if

condition else

11 //方式3

12if

condition1 else

ifcondition2 else

19 //方式4

20if

initialization; condition

23if _,ok :=f1();ok

else-if 的巢狀不受次數限制,若有多個,建議將可能性大的放在前面

在方式4中的初始化語句中,建議宣告變數,避免變數作用域帶來的問題

【switch】

1 //方式1  變數值的匹配

2switch var1

10switch i

1819 //方式2 變數判斷類似if

20switch

28switch

36 //方式3 包含變數宣告初始化

37switch initialization

45 switch result :=calculate();

備註:go中的switch不需要break來跳出,自動會跳出控制,如果想不跳出控制的話,就在case後面新增fallthrough,這樣就會自動執行這個case後面的case【case i>0:fallthrough】

【for】

1 //for

初始化語句;條件語句;修飾語句{}

2for i := 0;i < 10; i++

5 // for

條件語句{}

6 i :=0

7for i<100

11 // for ix,val :=range coll{}

12for key,val :=range str

【標籤與goto】(在程式設計中不建議使用,這個在c中被詬病很久,但是go語言的設計者為什麼...)

標籤的名稱大小寫敏感,為了提高可讀性,建議使用大寫字母

1

page main23

func main()

11goto here

12 }

標籤定義了要使用,和變數是一樣的,這是go語言的原則之一,程式中不允許出現不使用的**。

go流程控制

用於測試條件是否成立,成立則執行if括起來的 if condition 複製 如果需要在條件不滿足時執行,則只需要加上else即可 if condition else 複製 如果存在多個條件,可以使用else if增加新的判斷 if condition1 else if condition2 els...

go流程控制

1 if語句 1 if ture else 2if a 44 a 23else 2 switchswitch 語句用於基於不同條件執行不同動作,每乙個 case 分支都是唯一的,從上直下逐一測試,直到匹配為止。golang switch 分支表示式可以是任意型別,不限於常量。可省略 break,預設...

go流程控制

go語言僅有兩種流程控制語法,不存在while if age 18else if age 7else 標準迴圈 標準迴圈,結束後變數不存在 for i 0 i 10 i 迴圈外定義,結束迴圈後,變數仍存在 var i 0for i 10 i 將累加數值置於迴圈體中 for i 10 閉迴圈 forr...