|
for结构简介
Go语言只有for循环这一种循环结构,Go语言中的for循环语句的三个部分不需要用括号括起来,但循环体必须用 { } 括起来。基本的for循环包含三个由分号分开的组成部分:
- 初始化语句:在第一次循环执行前被执行
- 循环条件表达式:每轮迭代开始前被求值
- 后置语句:每轮迭代后被执行
初始化语句一般是一个短变量声明,这里声明的变量仅在整个 for 循环语句可见。如果条件表达式的值变为 false,那么迭代将终止。
基于计数器的for循环
基于计数器的迭代,基本形式为:
for 初始化语句; 条件语句; 修饰语句 { //循环语句
}
我们用for循环来计算100以内正整数的和。
package main
import "fmt"
func main(){
sum := 0
for i:=1;i= 0 {
i = i - 1
fmt.Printf("The variable i is now: %d\n", i)
}
}
for-range结构
提到for循环,我们必须再提一下range()这个内置函数,这是 Go 语言特有的一种的迭代结构,它一般用来遍历数组,slice和map等集合。我们用range来遍历一个数组,以下代码会打印出每个值的序号和对应的值。
package main
import(
"fmt"
)
func main() {
arr := [...]int{6, 7, 8}
for i, v := range arr {
fmt.Println(i,v)
}
}
无限循环
Go 语言有以下几种无限循环:
i:=0; ; i++
for { }
for ;; { }
for true { }
这些无限循环都是 for 循环的条件语句被省略了。如果 for 循环的头部没有条件语句,那么就会认为条件永远为 true。因此如果不想造成死循环,循环体内必须有相关的条件判断以确保会在某个时刻退出循环。
|
|
|