基于指定键从哈希集合中获取值的 Go 语言程序


在这篇 Go 语言文章中,我们将编写 Go 语言程序,使用 `found` 变量以及 `ok` 判断法从哈希集合中基于指定键获取值。

哈希映射是一种属于哈希集合的数据结构。它以键值对的形式存储数据。

语法

func make ([] type, size, capacity)

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

算法

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

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

  • 步骤 3 − 在 `main` 函数中,使用 `make` 函数(Go 语言内置函数)创建一个哈希映射。

  • 步骤 4 − 将值赋给映射中的键。

  • 步骤 5 − 在此步骤中,设置要获取其值的键。

  • 步骤 6 − 然后,使用 `found` 变量查看该值是否存在于映射中。

  • 步骤 7 − 如果 `found` 为真,则打印键的值。

  • 步骤 8 − 如果 `found` 为假,则表示未为该键获取任何值。

  • 步骤 9 − 使用 `fmt` 包中的 `Printf` 函数执行打印语句。

示例 1

在此示例中,我们将使用内置函数 `make` 函数创建一个哈希映射。然后,使用 `found` 变量获取指定键的值。

package main

import "fmt"

func main() {
	
   hashmap := make(map[string]string)

	
   hashmap["saree"] = "red"
   hashmap["kurti"] = "blue"
   hashmap["jacket"] = "green"

   key := "saree"

	
   value, found := hashmap[key]

   if found {
      fmt.Printf("The value for key '%s' is '%s'\n", key, value)
   } else {
      fmt.Printf("No value found for key '%s'\n", key)
   }
}

输出

The value for key 'saree' is 'red'

示例 2

在此示例中,我们将创建一个哈希映射,并使用 `ok` 判断法根据键查找映射中的值。`ok` 返回真或假。

package main

import "fmt"

func main() {
	
   hashmap := map[string]int{
      "pencils":   5,
      "pens":      10,
      "registers": 15,
   }
   key := "pens"

   value, ok := hashmap[key]

   if ok {
      fmt.Printf("The value for key '%s' is '%d'\n", key, value)
   } else {
      fmt.Printf("No value found for key '%s'\n", key)
   }
}

输出

The value for key 'pens' is '10'

结论

我们已成功编译并执行了该程序,以根据指定键获取值。在第一个示例中,我们使用 `found` 变量根据指定键获取值;在第二个示例中,我们使用 `ok` 判断法执行操作。

更新于:2023年5月3日

浏览量:102

启动您的职业生涯

完成课程获得认证

开始
广告