Go语言使用for关键字统一实现循环,基本语法为for初始化;条件;迭代{},如for i := 1; i

Go语言中的循环控制主要通过for关键字实现,它集成了其他语言中for、while甚至do-while的功能。Golang不支持while或do-while写法,所有循环逻辑都统一用for结构表达。
基本for循环语法
最基本的for循环包含初始化、条件判断和迭代操作三部分:
for 初始化; 条件; 迭代 {
// 循环体
}
示例:打印1到5的数字
for i := 1; i <= 5; i++ {
fmt.Println(i)
}
模拟while循环的方式
省略初始化和迭代部分,只保留条件,就可以实现类似while的效果:
立即学习“go语言免费学习笔记(深入)”;
n := 1
for n <= 5 {
fmt.Println(n)
n++
}
这会持续执行直到条件为false。
无限循环与手动退出
如果连条件也省略,就会进入无限循环,通常配合break语句使用:
for {
if 满足退出条件 {
break
}
// 其他处理
}
示例:读取用户输入直到输入"quit"
var input string
for {
fmt.Print("输入命令(quit退出): ")
fmt.Scanln(&input)
if input == "quit" {
break
}
fmt.Printf("你输入的是: %s\n", input)
}
使用continue跳过当前迭代
continue用于跳过本次循环剩余内容,直接进入下一次迭代:
示例:打印1到10之间的奇数
for i := 1; i <= 10; i++ {
if i%2 == 0 {
continue
}
fmt.Println(i)
}
循环中使用range遍历集合
在数组、切片、字符串、map和channel上,常用range进行遍历:
遍历字符串示例:
str := "Hello"
for index, char := range str {
fmt.Printf("索引 %d, 字符 %c\n", index, char)
}
遍历map示例:
m := map[string]int{"a": 1, "b": 2, "c": 3}
for key, value := range m {
fmt.Printf("键: %s, 值: %d\n", key, value)
}
基本上就这些。Golang的循环设计简洁,for一统天下,掌握几种写法就能应对各种场景。注意别忘了用break和continue控制流程,写起来很顺手。










