Go 语言(Golang)支持多种循环语句,其中最常见的包括 for
循环和 range
循环。这些循环结构允许你重复执行一段代码直到满足特定的条件。
Go 语言的 for
循环非常灵活,它不仅仅可以像 C 或 Java 那样使用传统的三部分结构(初始化语句、条件表达式、迭代语句),还可以仅使用条件表达式,或者完全省略条件表达式(即无限循环),甚至可以只使用迭代语句。
传统三部分结构:
for 初始化语句; 条件表达式; 迭代语句 {
// 循环体
}
仅条件表达式:
for 条件表达式 {
// 循环体
}
仅迭代语句(无限循环,需要手动控制退出):
for {
// 循环体
// 根据条件使用 break 退出循环
}
仅迭代语句的另一种形式(类似 while):
条件表达式
for {
if !条件表达式 {
break
}
// 循环体
}
range
循环用于遍历数组(array)、切片(slice)、字符串(string)、映射(map)或通道(channel)的元素。对于数组、切片和字符串,range
会返回元素的索引和值;对于映射,它返回键和对应的值。
遍历切片:
slice := []int{1, 2, 3, 4, 5}
for index, value := range slice {
fmt.Println(index, value)
}
遍历字符串:
str := "hello"
for index, char := range str {
fmt.Println(index, string(char))
}
遍历映射:
m := map[string]int{"one": 1, "two": 2, "three": 3}
for key, value := range m {
fmt.Println(key, value)
}
注意: 在遍历映射时,返回的键和值的顺序是不确定的,因为映射本身并不保证顺序。
Go 语言的循环结构非常灵活且强大,可以通过多种方式实现循环逻辑,以满足不同的编程需求。
上一篇: Golang 语言条件语句
下一篇: Golang 语言函数