go語言中map可以定義長度。 map可以根據新增的key-value動態的伸縮,因此它不存在固定長度或最大限制,但是也可以選擇標示map的初始容量cap,語法「make(map[keytype]valuetype, cap)」。
本教學操作環境:windows10系統、GO 1.11.2、Dell G3電腦。
Go語言中map 是一種特殊的資料結構,一種元素對(pair)的無序集合,pair 對應一個key(索引)和一個value(值),所以這個結構也稱為關聯數組或字典,這是一個能夠快速尋找值的理想結構,給定key,就可以迅速找到對應的value。
map 這種資料結構在其他程式語言中也稱為字典(Python)、hash 和 HashTable 等。
map 容量
和陣列不同,map 可以根據新增的key-value 動態的伸縮,因此它不存在固定長度或最大限制,但是也可以選擇標示map 的初始容量capacity,格式如下:
make(map[keytype]valuetype, cap)
例如:
map2 := make(map[string]float, 100)
當map 成長到容量上限的時候,如果再增加新的key-value,map 的大小會自動加1,所以出於性能的考慮,對於大的map 或會快速擴張的map,即使只是大概知道容量,也最好先標明。
這裡有一個 map 的具體例子,即將音階和對應的音訊映射起來:
noteFrequency := map[string]float32 { "C0": 16.35, "D0": 18.35, "E0": 20.60, "F0": 21.83, "G0": 24.50, "A0": 27.50, "B0": 30.87, "A4": 440}
推薦學習:Golang教程
#以上是go語言中map可以定義長度嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!