go語言學習筆記 map

2021-08-21 19:08:19 字數 1105 閱讀 2696

理解

map是由一組無序的鍵key值value對集合的內建型別,可以通過鍵來獲取對應的值,map和slices一樣,也是引用型別

注意:map之間不能使用==操作符來判斷

建立map

語法:map[type of key]type of value

var mymap map[string]int //nil
此時map是零值,不允許向map向新增元素,我們需要使用make函式初始化map

mymap := make(map[string]int)
新增map元素

map新增元素的方法和陣列一致

mymap["car"]   = 1

mymap["truck"] = 2

mymap["jeep"] = 3

也可以在初始化的時候就新增元素

mymap := map[string]int
刪除map元素

語法:delete(mapname, key),該函式沒有返回值

delete(mymap, "truck")
獲取map元素

與陣列一致

fmt.println(mymap["kitty"]) //10
map排序

map本身是雜湊表來實現的,所以是無序的,如果想要以鍵來對map排序,需要先提取key到slice中,再對slice排序,以下摘用大神們的**段舉例

func main() 

var keys string

for k := range m

sort.strings(keys)

for _, k := range keys

}

以上就是關於go語言中map的一些基本理解和操作,之後會持續更新的~

感謝你的閱讀~

Go語言學習筆記 map

學習筆記根據 無聞 go語言基礎教程 整理 package main import fmt sort func main 普通建立方式 func test1 fmt.println m map 使用make關鍵字建立 func test2 直接宣告和賦值建立 func test3 使用更簡單的方式 ...

go語言學習筆記 map

go語言內建有map這種資料結構,它由無序的鍵值對組成,跟大部分語言中的map用法非常相似。它的鍵不能由可變型別 引用語義 的結構型別擔當,如切片 陣列 函式等等。map只有len,沒有cap。我們可以直接定義,或者通過make函式建立,通過make函式建立時,可以指定容量。package main...

Go語言學習筆記 map

map是雜湊表的引用,map的型別為map k v,k和v是字典的鍵和值對應的資料型別,map中所有的鍵都擁有相同的資料型別,同時所有的值都擁有相同的資料型別,但鍵的型別和值的型別不一定相同 鍵的型別k必須是可以通過操作符 來進行比較的資料型別,所以map可以檢測某乙個鍵是否已經存在 ages ma...