Golang(通常简称为Go)语言中的范围(Range)是一个关键字,它用于在for循环中迭代数组(array)、切片(slice)、映射(map)、字符串(string)或通道(channel)的元素。Range提供了简洁的语法来遍历这些集合类型的所有元素,并可以同时获取元素的索引(或键)和值(对于映射和通道,则为键和值)。
在数组和切片上使用Range:
nums := []int{1, 2, 3, 4}
for index, value := range nums {
fmt.Printf("Index: %d, Value: %d\n", index, value)
}
在映射上使用Range:
person := map[string]int{"Alice": 25, "Bob": 30, "Charlie": 35}
for key, value := range person {
fmt.Printf("Key: %s, Value: %d\n", key, value)
}
在字符串上使用Range:
for index, char := range "hello" {
fmt.Printf("Index: %d, Char: %c\n", index, char)
}
在通道上使用Range:
messages := make(chan string, 2)
messages <- "Hello"
messages <- "World"
close(messages)
for message := range messages {
fmt.Println(message)
}
_
来忽略它。Range是Go语言中一个非常有用的特性,它简化了集合类型的迭代过程,使得代码更加清晰和简洁。
上一篇: Golang 语言切片(Slice)
下一篇: Golang 语言Map(集合)