Go语言程序创建哈希集合


在本文中,我们将编写一个Go语言程序,借助make函数和map函数来创建哈希集合。哈希映射存储键值对,可以通过索引访问。在这个程序中,我们将通过两个例子来创建一个哈希集合。

语法

func make ([] type, size, capacity)

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

使用Make函数

在这个方法中,我们将使用make函数创建一个哈希映射,然后向该哈希映射添加键值对。我们将以多种方式操作哈希映射,例如打印键值对或打印整个映射。

算法

  • 步骤1 - 创建一个main包,并在程序中声明fmt(格式化包),其中main产生可执行代码,fmt帮助格式化输入和输出。

  • 步骤2 - 创建一个main函数,并在该函数中使用Go语言的内置make函数创建一个哈希映射。

  • 步骤3 - 在此步骤中,将值添加到哈希映射中的键(pen、pencil和marker)。

  • 步骤4 - 使用fmt包中的Println函数在控制台上打印哈希映射。

  • 步骤5 - 然后,打印从上面创建的键值对中选择的键的值,与步骤4中的操作类似。

  • 步骤6 - 然后,使用if-else条件检查特定键是否存在于映射中,如果存在则打印键值对,否则打印该键没有可用信息。

示例

以下示例演示了使用make函数创建哈希集合的Go语言程序

package main

import "fmt"

func main() {
	
   hashmap := make(map[string]int)
   hashmap["pen"] = 26
   hashmap["pencil"] = 30
   hashmap["marker"] = 34

   fmt.Println(hashmap)	
   fmt.Println("The price of pencil is:", hashmap["pencil"])
	
   value, exists := hashmap["marker"]
   if exists {
      fmt.Println("The price of marker is:", value)
   } else {
      fmt.Println("There is no information about marker")
   }
}

输出

map[marker:34 pen:26 pencil:30]
The price of pencil is: 30
The price of marker is: 34

使用映射字面量

在这个方法中,我们将使用映射字面量而不是make函数来创建哈希映射。其他函数将与上一个示例中执行的操作类似。

算法

  • 步骤1 - 创建一个main包,并在程序中声明fmt(格式化包),其中main产生可执行代码,fmt帮助格式化输入和输出。

  • 步骤2 - 创建一个main函数,在这个函数中使用映射字面量创建哈希映射,并将值赋给映射中的键。

  • 步骤3 - 在此步骤中,使用fmt.Println()函数在控制台上打印映射,这里的ln表示换行。

  • 步骤4 - 在这里,打印特定的键值对以操作哈希映射。在本例中,我们使用了pencil的值在控制台上打印,类似于步骤3。

  • 步骤5 - 在本例中,检查键的值是否存在于映射中,并使用if-else条件,如果键存在于映射中则打印值,如果不存在则打印无信息。

示例

以下示例演示了使用映射字面量创建哈希集合的Go语言程序

package main

import "fmt"

func main() {
	
   hashmap := map[string]int{
      "pen":    24,
      "pencil": 30,
      "marker": 36,
   }
   fmt.Println(hashmap)	 
   fmt.Println("The price of pencil is:", hashmap["pencil"])

   value, exists := hashmap["marker"]
   if exists {
      fmt.Println("The price of marker is:", value)
   } else {
      fmt.Println("There is no information about marker")
   }
}

输出

map[marker:36 pen:24 pencil:30]
The price of pencil is: 30
The price of marker is: 36

结论

我们通过两个例子执行了创建哈希集合的程序。这两个例子执行方式相似,它们之间的基本区别在于,在第一个例子中,哈希映射是借助Go语言中的内置函数make函数创建的,而在第二个例子中,哈希映射是借助映射字面量创建的。

更新于:2023年4月3日

浏览量:163

启动您的职业生涯

完成课程获得认证

开始学习
广告