Go 18 Go 流程控制

2022-07-02 03:39:13 字數 1324 閱讀 8600

在流程控制中,程式執行的流程控制表示決定程式是如何執行的,是我們必須掌握的,主要有三大流程控制語句

順序控制:向前引用

分支控制:讓程式有選擇的執行,分為:

單分支   if  表示式 {}

雙分支   if  表示式 {} else {};只會執行其中的一部分;

多分支   

巢狀分支(不要巢狀太多,最多不超過3層)

switch分支:每乙個case分支都是唯一的,從上到下逐一測試,知道匹配為止;匹配項後面不需要加break;

golang 中的case後的表示式可以有多個,且用逗號隔開;

細節注意:

1)case後是乙個表示式(即:常量值,變數,乙個有返回值函式,還可以運算);

2)switch 後數值型別和 case 後的數值型別必須保持一致;

3)case後的表示式可以是多個,且用逗號隔開,只要有乙個滿足就會執行,都不滿足進行下乙個case;

4)case後如果是常量(字面量)則不可以重複;

5)default 不是必須的,都不滿足就是不做任何操作;

6)switch 後也可以不帶表示式,用法類似 if -- else 分支使用;

7)switch穿透 fallthrough,預設只能穿透一層

8)type switch 

swith 和 if 的比較

1.如果判斷的具體數值不多,而且符合整數,浮點數,字元,字串,這幾種型別,建議使用swith語句,簡潔高效;

2.其他情況,對區間判斷和結果為bool型別的判斷,使用if,if使用的範圍更廣;

for迴圈控制:

就是讓我們的**迴圈的執行;

基本語法:

for 迴圈變數初始化; 迴圈條件; 迴圈變數迭代

語法格式說明:

有四個要素:

執行順序:迴圈變數初始化-->迴圈條件判斷-->如果迴圈條件為真就執行迴圈操作--->迴圈變數迭代-->反覆執行2,3,4直到迴圈條件為假退出for迴圈;

注意事項:

1.迴圈條件是返回乙個布林值的表示式;

2.for迴圈的第二種使用方式:

for 迴圈判斷條件

3.for-range 用來遍歷字串和陣列;

如果字串中有中文,傳統遍歷會出現亂碼,因為傳統遍歷按照位元組遍歷,而乙個漢字在utf8編碼是對應3個位元組(解決方案:直接轉為切片型別進行遍歷即可);

而for-range 是按字元遍歷的所以遇到中文不會出現亂碼

go語言中沒有while和do...while 語法;

兩者的區別:while: 先判斷後執行; do...while: 先執行後判斷;

break : 就是跳出for迴圈

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...