Go语言程序合并两个哈希集合


在 Go 语言中,我们可以使用 map 函数合并两个哈希集合。哈希集合中存在一个哈希映射。它存储键值对。我们可以对哈希映射执行各种操作,例如合并它们。在本文中,我们将使用一种方法合并两个哈希映射。在这种方法中,我们将创建一个额外的映射来存储合并的键值对。然后,将使用 fmt 包在终端上打印该映射。

算法

  • 创建一个名为 main 的包,并在程序中声明 fmt(格式化包),其中 main 生成可执行代码,fmt 帮助格式化输入和输出。

  • 在 main 函数中,使用 map 字面量创建哈希映射1,键和值都是字符串类型。

  • 类似步骤2,创建另一个哈希映射2,但这里为 item2 分配一个新值。

  • 使用内置函数 make 和 Go 语言中的 map 字面量创建另一个名为 merge_hashmap 的映射。

  • 迭代哈希映射1,并在每次迭代中将值添加到相应的键。

  • 类似地,迭代哈希映射2,并将相应的值添加到键。

  • 在键值对合并到映射后,使用 fmt 包的 Println 函数在控制台上打印映射,其中 ln 表示换行。

语法

func make ([] type, size, capacity)

Go 语言中的 make 函数用于创建数组/映射,它接受要创建的变量的类型、大小和容量作为参数。

示例

在此示例中,首先,我们将创建两个哈希映射,它们的键值对将被合并。然后,将创建另一个映射以在其中添加值,最后将在控制台上打印输出。让我们仔细看看代码和算法。

//Golang program to merge two hash collections
package main

import "fmt" //import fmt package in the program

//Main function to execute the program
func main() {
   hashmap1 := map[string]string{  //create hashmap1 using map literal
      "item1": "value1",
      "item2": "value2",
   }
   hashmap2 := map[string]string{   //create hashmap2 using map literal
      "item2": "new_value",
      "item3": "value3",
   }
   
   merge_hashmap := make(map[string]string)  //create this map to store the merged values
   
   for key, value := range hashmap1 {
      merge_hashmap[key] = value //iterate the map1 to add values in new map
   }
   
   for key, value := range hashmap2 {
      merge_hashmap[key] = value //iterate the map2 to add values in new map 
   }
   
   fmt.Println("The map after its merged:")
   fmt.Println("Merged hash:", merge_hashmap)//print the new map 
}

输出

The map after its merged:
Merged hash: map[item1:value1 item2:new_value item3:value3]

结论

我们使用一个简单的示例编译并执行了合并两个哈希集合的程序。在上面描述的示例中,我们创建了一个额外的映射来存储和合并两个哈希映射的键值对。

更新于: 2023年3月27日

302 次查看

启动您的 职业生涯

通过完成课程获得认证

开始
广告