在Go语言中,range关键字用于迭代数组、切片、通道或映射,并返回索引和元素值。具体用法如下所示:
arr := []int{1, 2, 3, 4, 5}
for index, value := range arr {
fmt.Printf("Index: %d, Value: %d\n", index, value)
}
m := map[string]int{"a": 1, "b": 2, "c": 3}
for key, value := range m {
fmt.Printf("Key: %s, Value: %d\n", key, value)
}
ch := make(chan int)
go func() {
for i := 0; i < 5; i++ {
ch <- i
}
close(ch)
}()
for value := range ch {
fmt.Printf("Value: %d\n", value)
}
在以上示例中,range关键字的返回值根据迭代对象的类型而有所不同,但通常包含索引、键或值等信息。通过range关键字,可以方便地遍历各种数据结构,提高代码的可读性和简洁性。