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 獲取對映的大小。這兩個示例都給出了所需的輸出。

更新於: 2023年4月3日

319 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.