Go语言程序:使用另一个哈希集合替换哈希集合中的项


在这篇Go语言文章中,我们将学习如何使用ok惯用法以及循环来替换哈希集合中的项。哈希集合包含一个高效的数据结构——哈希表。

语法

func range(variable)

range函数用于迭代任何数据类型。要使用它,我们首先要编写range关键字,后跟我们要迭代到的数据类型,循环将迭代到变量的最后一个元素。

算法

  • 步骤1 − 此程序导入两个包fmt和main,其中fmt帮助格式化输入和输出,main帮助生成可执行代码。

  • 步骤2 − 创建一个main函数。

  • 步骤3 − 在main函数中,创建一个键类型为字符串,值类型为整数的映射。

  • 步骤4 − 设置映射中的键和值。

  • 步骤5 − 创建另一个替换映射,键和值类型均为字符串。

  • 步骤6 − 迭代替换映射,并使用ok惯用法将原始映射中的值添加到其中。

  • 步骤7 − 在控制台上打印原始映射。

  • 步骤8 − 使用fmt包中的Println函数执行打印语句,其中ln表示换行。

示例1

在这个示例中,我们将使用映射字面量创建一个原始哈希映射和一个替换映射,它们的键和值类型都为字符串。我们将在迭代替换映射的for循环中,使用ok惯用法替换原始映射中的数据。

package main

import "fmt"

func main() {	
   original_hashmap := map[string]string{
      "item1": "Pizza",
      "item2": "Pasta",
      "item3": "Maggi",
   }
	
   replacement_hashmap := map[string]string{
      "item2": "Noodles",
      "item3": "Burger",
      "item4": "momos",
   }
	
   for key, value := range replacement_hashmap {		
      if _, ok := original_hashmap[key]; ok {
         original_hashmap[key] = value
      }
   }
	
   fmt.Println("The updated hash collection is:")
   fmt.Println(original_hashmap)
}

输出

The updated hash collection is:
map[item1:Pizza item2:Noodles item3:Burger]

示例2

在这个示例中,我们将创建两个映射:原始映射和替换映射。使用for循环遍历替换映射并将项目添加到映射中。

package main

import "fmt"

func main() {
	
   original_hashmap := map[string]string{
      "item1": "pizza",
      "item2": "pasta",
      "item3": "maggi",
   }

   replacement_hashmap := map[string]string{
      "item2": "momos",
      "item3": "noodles",
      "item4": "burger",
   }
	
   for key, value := range replacement_hashmap {		
      original_hashmap[key] = value
   }
   fmt.Println("The updated hash collection is:")
   fmt.Println(original_hashmap)
}

输出

The updated hash collection is:
map[item1:pizza item2:momos item3:noodles item4:burger]

结论

我们执行了使用另一个哈希集合替换哈希集合中的项的程序。在第一个示例中,我们使用了ok惯用法和for循环;在第二个示例中,我们使用for循环更新了原始映射。

更新于:2023年5月3日

浏览量:112

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.