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 強行退出整個迴圈。