Go语言用for实现所有循环,支持初始化、条件判断和迭代操作,如for i := 0; i < 10; i++ {}。

Go语言中没有传统的while或do-while循环,所有循环逻辑都通过for关键字实现。Golang的for语句非常灵活,可以模拟各种循环结构,并配合break、continue和goto进行流程控制。
最常见的形式包含初始化、条件判断和迭代操作:
for i := 0; i < 5; i++ {
fmt.Println(i)
}
这相当于其他语言中的for循环,会输出0到4。
省略初始化和递增部分,只保留条件表达式,就变成了while风格的循环:
立即学习“go语言免费学习笔记(深入)”;
n := 1
for n < 100 {
n *= 2
}
fmt.Println(n) // 输出128
只要条件为真就会持续执行,适合不确定迭代次数的场景。
不写任何条件的for语句会形成无限循环,通常配合break使用来退出:
for {
input := getInput()
if input == "quit" {
break
}
process(input)
}
break用于立即终止当前循环,常用于满足特定条件时提前退出。
continue会让循环跳过当前迭代的剩余代码,直接进入下一轮:
for i := 0; i < 10; i++ {
if i%2 == 0 {
continue
}
fmt.Println(i) // 只打印奇数
}
在过滤数据或排除特殊情况时非常有用。
当有嵌套循环时,可以用标签配合break或continue控制外层循环:
outer:
for i := 0; i < 3; i++ {
for j := 0; j < 3; j++ {
if i == 1 && j == 1 {
break outer
}
fmt.Printf("i=%d, j=%d\n", i, j)
}
}
上面例子会在i和j都等于1时完全退出外层循环。虽然支持goto,但在循环控制中应尽量避免使用,容易降低代码可读性。
基本上就这些。Golang用统一的for结构简化了循环语法,结合几个控制关键字就能应对大多数场景,既简洁又强大。
以上就是Golang如何实现循环控制语句的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号