Go通關03:控制結構,if、for、switch邏輯語句
阿新 • • 發佈:2021-08-02
if 條件語句
func main() {
i:=6
if i >10 {
fmt.Println("i>10")
} else if i>5 && i<=10 {
fmt.Println("5<i<=10")
} else {
fmt.Println("i<=5")
}
}
注意:
- if 後的表達無 ‘( )’
- 每個條件分支中的 ‘{ }’ 是必須的。哪怕只有一行程式碼。
3.if/else後的 ‘{’ 不能獨佔一行。否則編譯不通過
switch 選擇語句
if 條件語句比較適合分支比較少的情況。如果有很多分支,switch會更方便。
switch i:=6;{
case i > 10:
fmt.Println("i>10")
case i > 6 && i <= 10:
fmt.Println("5<i<10")
default:
fmt.Println("i<=5")
}
注意: Go 語言為防止忘記寫 break,case 後自帶 break,這和其他語言不一樣。
如果確實需要執行下一個 case ,可以使用 fallthrough 關鍵字
switch j:=1;j{ case 1: fallthrough case 2: fmt.Println("1") default: fmt.Println("無匹配") }
以上結果會輸出 1。
當switch之後有表示式時,case後的值就要和這個表示式的結果型別相同,比如這裡 j 是 int 型別,所以 case 後就得使用 int 型別。
for 迴圈語句
for 迴圈由三部分組成,其中需要使用兩個 ; 分割:
sum := 0
for i := 1; i <= 100; i++{
sum += i
}
fmt.Println("sum:",sum)
第一部分是簡單語句
第二部分是 for 迴圈的條件
第三部分是更新語句
這三部分組成都不是必須的,可以被省略。
Go 語言中沒有 while 迴圈,可以通過for達到while的效果:
sum := 0 i := 1 for i <= 100 { sum += 1 i++ }
Go 中,同樣支援continue,break 控制for迴圈。
- continue 跳出本次迴圈,進入下次迴圈。
- break 強行退出整個迴圈。