[toc]
golang提供了下面幾個關鍵字:if/else
、for
、switch/case/fallthrough
、select
、break
、continue
、goto
等,實現程式的分支控制,並且賦予它們不同的用法。在本節中我們會重點討論除了select
的其他關鍵字,select
會放在併發和通訊的時候提到。
golang的分支語句的關鍵字為if/else
、switch/case/fallthrough
、select
後者會在併發和通訊的時候提到。
乙個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
對於break
、continue
、goto
,分別用於進行迴圈控制使用,滿足一定條件跳出迴圈、結束本次迴圈以及跳轉到指定位置。 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 多分支控制 多分支只能有乙個執行入口...