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函数创建的,而在第二个例子中,哈希映射是借助映射字面量创建的。