Go 中 range 关键字的作用是什么?
range 关键字在 Go 语言中非常有用,主要用于迭代或循环遍历数组、切片、字符串或映射(map)。使用 range 可以更简洁明了地进行元素的遍历处理。使用示例1. 遍历数组或切片当使用 range 遍历数组或切片时,它会返回两个值,第一个是元素的索引,第二个是元素的副本。nums := []int{10, 20, 30, 40}for index, value := range nums { fmt.Printf("索引:%d, 值:%d\n", index, value)}2. 遍历字符串遍历字符串时,range 会返回字符的索引和该字符的 Unicode 代码点,而不是字节位置。s := "Hello, 世界"for index, runeValue := range s { fmt.Printf("%#U starts at byte position %d\n", runeValue, index)}这里的 runeValue 是类型为 rune 的 Unicode 代码点。3. 遍历映射(Map)遍历映射时,range 会返回键值对。m := map[string]int{"a": 1, "b": 2}for key, value := range m { fmt.Printf("键:%s, 值:%d\n", key, value)}4. 只遍历键或值如果只需要键或值,可以使用空白标识符 _ 忽略不需要的返回值。// 只遍历键for key := range m { fmt.Println("键:", key)}// 只遍历值for _, value := range m { fmt.Println("值:", value)}总结range 提供了一种简洁有效的方式来遍历数据结构中的元素,使得代码不仅更加清晰,也易于维护。在 Go 中,它是处理集合数据类型的首选工具之一。