本文适合对GO的基本语法有所了解的人阅读
- 流程控制语句
if
使用
package main
import "fmt"
func main() {
x := 0
if x > 0 {
fmt.Println("big one")
} else if x < 0 {
fmt.Println("little one")
} else {
fmt.Println("one")
}
}
switch
使用
package main
import "fmt"
func main() {
x := 0
switch {
case x > 0 :
fmt.Println("big one")
case x < 0 :
fmt.Println("little one")
default:
fmt.Println("one")
}
}
for
使用
package main
import "fmt"
func main() {
for i := 0; i < 5; i++{
fmt.Println(i)
}
for i := 5; i > 0; i--{
fmt.Println(i)
}
}
package main
import "fmt"
func main() {
x := 0
for x < 5 { // 相当于python中 while x < 5
fmt.Println(x)
x++
}
}
package main
import "fmt"
func main() {
x := 5
for { // 相当于python中的while True
fmt.Println(x)
x--
if x < 0 {
break
}
}
}
迭代遍历 可以返回索引
package main
import "fmt"
func main() {
x := [] int {100, 122, 109, 102}
for i, n := range x {
fmt.Printf("%d:%d\n", i, n)
}
}
fmt.Printf("%d:%d\n", i, n)
, 与fmt.Println(i, ":', n)
效果等同
结果如下:
API server listening at: 127.0.0.1:45112
0:100
1:122
2:109
3:102