go-循环
- Go 里只有一种循环关键字:
for。没有while、也没有do-while,所有循环形态都靠for表达
for 代替 while
- 语法: for 条件 {}
i := 0
for i < 5 {
fmt.Println(i)
i++
}
无限循环
- 当条件省略时,就是无限循环
- 通过break来跳出
i := 0
for {
if i >= 5 {
break
}
fmt.Println(i)
i++
}
for range 遍历数据
- range日常很常用,用来遍历各种集合类型的数据
- 遍历切片、数组、字符串、map、channel 时,更常用
range,写法更简洁
- 遍历切片、数组、字符串、map、channel 时,更常用
- range用于搭配for循环来遍历数据
- range 每次遍历会提供“索引/key + value”
for index, value := range data {
fmt.Println(index, value)
}
break 与 continue
| 关键字 | 含义 |
|---|---|
break | 立刻跳出当前循环 |
continue | 跳过本次剩余代码,进入下一次循环 |
goto
goto可以跳转到同一函数内的某个标签位置- goto在实际开发中很少用,可读性比较差,不推荐使用
- 语法:
goto 标签名- 在代码某处,定义标签,即:
标签名:
- 在代码某处,定义标签,即:
package main
import "fm
func main() {
fmt.Println("开始")
goto End
fmt.Println("这里不会执行")
End:
fmt.Println("结束")
}