關於Go中的map

2021-10-01 18:25:33 字數 437 閱讀 9114

map的定義

m := map[string]string{}

m := make(map[string]int) // 空map

var m = map[string]int // nil

遍歷:for k,v := range map1

遍歷不保證順序,如果需要順序, 需手動排序

獲取操作:

value1 := map[「key1」]

value1, ok := map[「key1」]

如果key不存在的話,返回型別預設值 ok是bool值,判斷是否存在該鍵

刪除操作

delete(map1, 「kay1」)

map使用雜湊表, 可以用來比較

除了slice, function, map都可以作為key

struct只要不包含上述型別, 可以作為key

go協程中的安全map使用

為什麼要用安全map?是go協程中才會使用,map 是一種無序的鍵值對的集合。map 最重要的一點是通過 key 來快速檢索資料,key 類似於索引,指向資料的值。問題來了,這麼安逸的 資料結構,它不是協程安全的 當多個 協程同時對乙個map 進行 讀寫時,會丟擲致命錯誤。go 語言中有乙個其他的工...

go語言中的map

package main import fmt sort func main 同上 var b map int string make map int string 通過make建立map var c make map int string 簡化寫法 d make map int string 設定...

go語言map的使用

go語言中的map 對映 字典 是一種內建的資料結構,它是乙個無序的key value鍵值對的集合,資料結構是堆,底層是使用雜湊表實現的,屬於引用型別。四種方式建立map make map string string,5 make map string string map string strin...