当前位置: 技术文章>> go中的在函数间传递映射详细介绍与代码示例

文章标题:go中的在函数间传递映射详细介绍与代码示例
  • 文章分类: 后端
  • 18992 阅读
文章标签: go go基础

在Go语言中,映射(map)可以在函数之间进行传递。传递映射作为参数时,可以按照以下方式进行操作:

  1. 将映射作为参数传递给函数。

  2. 在函数内部,可以通过参数来访问传递进来的映射。

  3. 对映射进行修改后,修改的结果会影响原始映射。

下面是一个示例代码,演示了如何在函数间传递映射:


package main



import "fmt"  



func modifyMap(m map[string]int) {

m["key"] = 100 // 修改映射的值  

}



func main() {

myMap := map[string]int{

"key1": 42,

"key2": 84,

}



fmt.Println("Before:", myMap) // 输出: Before: map[key1:42 key2:84]  



modifyMap(myMap) // 将myMap作为参数传递给modifyMap函数  



fmt.Println("After:", myMap) // 输出: After: map[key1:42 key2:84 key:100]  

}

在上面的示例中,我们定义了一个名为modifyMap的函数,它接受一个映射作为参数。在modifyMap函数内部,我们通过参数m来访问传递进来的映射,并修改了其中"key"键的值。在main函数中,我们创建了一个名为myMap的映射,并将其作为参数传递给了modifyMap函数。在函数调用之后,我们可以看到myMap的键值对中多了一个"key": 100,这就是在modifyMap函数中对映射进行修改的结果。

需要注意的是,当传递映射作为参数时,传递的是映射的副本而不是引用。这意味着在函数内部对映射的修改不会直接影响到原始映射。如果要修改原始映射的值,可以将映射的引用作为参数传递给函数。


推荐文章