在Go語言中,range關(guān)鍵字用于迭代數(shù)組、切片、通道或映射,并返回索引和元素值。具體用法如下所示:
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關(guān)鍵字的返回值根據(jù)迭代對象的類型而有所不同,但通常包含索引、鍵或值等信息。通過range關(guān)鍵字,可以方便地遍歷各種數(shù)據(jù)結(jié)構(gòu),提高代碼的可讀性和簡潔性。