在 Golang 中,常见的循环有 for 循环和 range 循环。
for 循环
for 循环的基本语法如下:
for initialization; condition; post {
// 循环体
}
其中,initialization 表示循环开始前的初始化语句,condition 表示循环条件,post 表示每次循环后要执行的语句。在每次循环时,都会先执行 initialization,然后判断 condition 是否成立,如果成立就执行循环体,然后执行 post,最后再次判断 condition 是否成立,如果成立就继续循环,否则跳出循环。
例如,输出 1 到 10 的数字可以使用如下代码:
for i := 1; i <= 10; i++ {
fmt.Println(i)
}
range 循环
range 循环可以用于迭代数组、切片、字符串、映射等数据结构。其基本语法如下:
for index, element := range collection {
// 循环体
}
其中,index 表示迭代的下标或键值,element 表示迭代的元素值,collection 表示要迭代的数据结构。在每次循环时,都会将下标或键值赋值给 index,元素值赋值给 element,然后执行循环体。
例如,迭代一个字符串可以使用如下代码:
str := "Hello, World!"
for index, char := range str {
fmt.Printf("index: %d, char: %c\n", index, char)
}
以上是 Golang 中常用的两种循环方式,根据实际需求选择合适的循环方式。同时,在编写循环时应注意避免死循环和过度嵌套循环等问题。