Go
当中只有for
循环结构,可没有像c/c++
语言有while
、do ... while
的。for
循环结构与if
分支结构一样,可以省略()
,左大括号{
必须与for
在同一行。
Go
当中只有for
循环结构,可没有像c/c++
语言有while
、do ... while
的。for
循环结构与if
分支结构一样,可以省略()
,左大括号{
必须与for
在同一行。
package main
import (
"fmt"
)
func main() {
num := 0
for i := 0; i < 10; i++ {
num += i
}
fmt.Println("num 最终和为:", num)
}
若想实现与while
、do ... while
一样的效果,便去掉条件表达式,直接写个for { ....}
或者for ; ; { ...}
。
package main
import (
"fmt"
)
func main() {
sum := 0
for {
sum++
if sum > 30 {
break
}
}
fmt.Println("num 最终和为:", sum)
}
其实,在Go
还提供了一个关键字range
来遍历数组、切片、字符串、map
以及后续的通道(channel)
。
package main
import (
"fmt"
)
func main() {
slice := []string{"秋码记录", "https://qiucode.cn", "仗剑行于江湖,执笔记江湖事!"}
// 迭代每个元素,并显示值和地址
for index, value := range slice {
fmt.Printf("索引:%d 值是:%s\n", index, value)
}
}