Go语言程序获取哈希集合的大小
在 Go 语言中,我们可以使用各种内部函数或包,如 len() 函数或 reflect 包,来获取哈希集合的大小。哈希集合包含一个哈希映射,通常用于创建键值对,并以此缩短执行时间。在本程序中,我们使用了两个示例来获取哈希集合的大小。
语法
func make ([] type, size, capacity)
Go 语言中的 make 函数用于创建数组/映射,它接受要创建的变量类型、大小和容量作为参数。
func range(variable)
range 函数用于迭代任何数据类型。要使用它,我们首先必须编写 range 关键字,后跟我们要迭代到的数据类型,结果循环将迭代到变量的最后一个元素。
func len(v Type) int
len() 函数用于获取任何参数的长度。它接受一个参数作为我们希望查找其长度的数据类型变量,并返回一个整数,即变量的长度。
使用 Len 函数
在这种方法中,我们将使用 Go 语言中的 make 函数创建一个哈希映射,然后使用 len 函数查找映射的长度,长度将使用 fmt 包打印到控制台。
算法
步骤 1 − 创建一个包 main 并声明程序中的 fmt(格式包)包,其中 main 生成可执行代码,fmt 帮助格式化输入和输出。
步骤 2 − 创建一个 main 函数,并在该函数中使用 make 函数(Go 语言中的内置函数)创建一个哈希映射。
步骤 3 − 将值分配给哈希映射的键(key1、key2、key3、key4)。
步骤 4 − 然后,使用 len 方法计算哈希映射的长度。
步骤 5 − 使用 fmt 包中的 Println 函数打印映射的长度到控制台,其中 ln 表示换行。
示例
以下示例演示了使用 len 函数获取哈希集合大小的 Go 语言程序
package main
import "fmt"
func main() {
hashmap := make(map[string]int)
hashmap["key1"] = 10
hashmap["key2"] = 20
hashmap["key3"] = 30
hashmap["key4"] = 40
fmt.Println("Size of map is:", len(hashmap))
}
输出
Size of map is: 4
使用 Size 变量
在这种方法中,我们将使用 size 变量来计算哈希映射的大小。哈希映射的创建方式与前一个示例中相同。然后,它将被迭代,并且在每次迭代时 size 变量都会递增。
算法
步骤 1 − 创建一个包 main 并声明程序中的 fmt(格式包)包,其中 main 生成可执行代码,fmt 帮助格式化输入和输出。
步骤 2 − 在 main 函数中使用 make 函数创建哈希映射,就像在上一个示例中所做的那样。
步骤 3 − 向键元素添加值,以便创建 key1、key2、key3 和 key4。
步骤 4 − 创建一个变量 size,它将告诉我们哈希映射的大小。
步骤 5 − 运行一个循环直到哈希映射的范围,并在每次迭代中递增 size 变量。
步骤 6 − 最后,当循环终止时,使用 Println 函数打印映射的大小,其中 ln 表示换行。
示例
以下示例说明了使用 size 变量获取哈希集合大小的 Go 语言程序
package main
import "fmt"
func main() {
hashmap := make(map[string]int)
hashmap["key1"] = 10
hashmap["key2"] = 20
hashmap["key3"] = 30
hashmap["key4"] = 40
var size int
for range hashmap {
size++
}
fmt.Println("Size of map is:", size)
}
输出
Size of map: 4
使用 reflect 包
在这种方法中,我们将编写一个 Go 语言程序,使用 reflect 包中的 ValueOf 函数来获取哈希集合的大小。
算法
步骤 1 − 创建一个包 main 并声明程序中的 fmt(格式包)包,其中 main 生成可执行代码,fmt 帮助格式化输入和输出。
步骤 2 − 创建一个 main 函数,在其中进一步创建一个哈希映射,其中键的类型为字符串,值的类型为整数
步骤 3 − 然后,使用 reflect 包中的 ValueOf 函数和 Len 方法获取哈希集合的大小
步骤 4 − 然后,使用 fmt 包中的 Println 函数打印哈希集合的大小,其中 ln 表示换行
示例
以下示例演示了使用 reflect 包获取哈希集合大小的 Go 语言程序
package main
import (
"fmt"
"reflect"
)
func main() {
hashmap := map[string]int{
"pencil": 10,
"pen": 20,
"scale": 30,
}
size := reflect.ValueOf(hash).Len()
fmt.Println("The size of hash collection is:", size)
}
输出
Found pen with value 10
结论
我们使用两个示例执行了获取哈希集合大小的程序。在第一个示例中,我们使用 len 方法获取映射的大小,在第二个示例中,我们使用变量 size 获取映射的大小。这两个示例都给出了所需的输出。
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP