Golang程序:检查哈希集合是否为空

Golang程序:检查哈希集合是否为空

在本文中,我们将编写 Go 语言程序,以检查哈希集合是否为空。哈希集合是一种数据结构,在 Go(Golang)中包含键值对,并且能够进行快速查找、添加和删除。对应键的值可以通过将键哈希为索引来访问。

在 Go 中,map 形式的哈希集合具有内置支持。这里,map 是一种引用类型,通过使用 map 关键字,后跟格式中的键类型和值类型来声明。

语法

func make([]type, size, capacity)

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

func len(v Type) int

len() 函数用于获取任何参数的长度。它接受一个参数作为数据类型变量,其长度我们希望找到,并返回整数值,该值是变量的长度。

func range(variable)

range 函数用于迭代任何数据类型。为了使用这个函数,我们首先要写一个 range 关键字,后面跟着我们想要迭代的数据类型,结果循环将迭代到变量的最后一个元素。

算法

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

  • 步骤 2 – 创建一个 main 函数,并在此函数内使用 make 函数和 map 字面量创建名为 map_create 的映射。

  • 步骤 3 – 在此步骤中,检查创建的映射的长度是否等于0。

  • 步骤 4 – 如果满足步骤 3 中的条件,则打印 map 为空,否则使用 if-else 条件打印 map 不为空。

  • 步骤 5 – 使用 fmt.Println() 函数执行打印语句,其中 ln 表示换行。

示例 1

在这个示例中,我们将使用 len 函数检查映射是否为空。我们将使用内置函数 make 创建一个映射。然后我们将在该映射上使用 len 方法获取输出。

package main

import "fmt"

func main() {
   map_create := make(map[string]int) 
   if len(map_create) == 0 {
      fmt.Println("Map is empty")
   } else {
      fmt.Println("Map is not empty")   
   }
}

输出

Map is empty

示例 2

在这个示例中,我们将使用一个外部函数,该函数将返回一个布尔值,指示映射是否为空。在这种情况下,if-else 条件将用于查看 map 是否为空,并操纵从函数返回的值。

package main

import "fmt"

func is_map_empty(map_create map[string]int) bool {
   return len(map_create) == 0
}

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

   if is_map_empty(map_create) {
      fmt.Println("Map is empty")
   } else {
      fmt.Println("Map is not empty")
   }
}

输出

Map is empty

示例 3

在这个示例中,我们将编写一个 Golang 程序,使用空标志检查哈希集合是否为空,其中默认值将设置为 true。

package main

import "fmt"

func main() {
   hashmap := make(map[string]string)   
   empty := true
   for key, _ := range hashmap {
      if key != "" {
         empty = false
         break
      }
   }

   if empty {
      fmt.Println("哈希表为空")
   } else {
      fmt.Println("哈希表不为空")
   }

   hashmap["key1"] = "value1"   
   empty = true
   for key, _ := range hashmap {
      if key != "" {
         empty = false
         break
      }
   }

   if empty {
      fmt.Println("哈希表为空")
   } else {
      fmt.Println("哈希表不为空")
   }
}

输出结果

哈希表为空
哈希表不为空

结论

我们使用三个示例来执行检查哈希集合是否为空的程序。在第一个示例中,我们使用len函数来执行程序,在第二个示例中,我们使用一个带有Boolean作为返回类型的外部函数,在第三个示例中,我们使用空标志来执行程序。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程