一、for回圈
Go 語言中沒有 while 回圈,只有一個 for 回圈
for 變數初始化;條件;變數自增/自減 {
回圈體內容
}
1、基本使用
for i := 0; i < 10; i++ {
fmt.Println(i)
}
2、省略第一部分
i := 0
for ; i < 10; i++ {
fmt.Println(i)
}
3、省略第一和三部分(這是一個 while 回圈) for 條件 { 回圈體內容 }
i := 0
for i < 10 {
fmt.Println(i)
i++
}
4、死回圈
for {
fmt.Println("死回圈")
}
5、開多協程演示
for i := 0; i < 2000; i++ {
go test()
}
func test() {
for {
fmt.Println("死回圈")
}
}
6、break:結束本次 for 回圈,continue 結束本次回圈,繼續下一次回圈
二、Switch陳述句
Switch 是一個條件陳述句,用于將運算式的值與可能匹配的選項串列進行比較,并根據匹配情況執行相應的代碼塊,它可以被認為是替代多個 if else 陳述句的常用方式
1、基本使用
num := 4
switch num {
case 1:
fmt.Println("1")
case 2:
fmt.Println("2")
case 3:
fmt.Println("3")
case 4:
fmt.Println("4")
}
// 輸出
4
2、默認情況(都沒有匹配上)
num := 5
switch num {
case 1:
fmt.Println("1")
case 2:
fmt.Println("2")
case 3:
fmt.Println("3")
case 4:
fmt.Println("4")
default:
fmt.Println("都沒有匹配上")
}
// 輸出
都沒有匹配上
3、多運算式判斷
num := 44
switch num {
case 11, 12, 13, 14:
fmt.Println("1")
case 21, 22:
fmt.Println("2")
case 31, 33:
fmt.Println("3")
case 40, 43, 44:
fmt.Println("4")
default:
fmt.Println("都沒有匹配上")
}
// 輸出
4
4、無運算式的 Switch
num := 44
switch {
case num == 11, num == 12:
fmt.Println(11, 12)
case num == 40, num == 44:
fmt.Println(40, 44)
}
// 輸出
40 44
5、Fallthrough(穿透,只要看到 fallthrough,無條件執行下一個 case 或者 default )
num := 12
switch {
case num == 11, num == 12:
fmt.Println(11, 12)
fallthrough
case num == 40, num == 44:
fmt.Println(40, 44)
fallthrough
default:
fmt.Println("無匹配")
}
// 輸出
11 12
40 44
無匹配
學習之旅
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/306131.html
標籤:其他
