map 是一種無序的鍵值對的集合。map 最重要的一點是通過 key 來快速檢索資料,key 類似於索引,指向資料的值。
map 是一種集合,所以我們可以像迭代陣列和切片那樣迭代它。不過,map 是無序的,我們無法決定它的返回順序,這是因為 map 是使用 hash 表來實現的。
func main()
m2 := make(map[string]int) // m3 = empty
var m3 map[string]int // m3 = nil
fmt.print(m1,m2,m3)
}
執行結果如下:
使用range對map進行遍歷
func main()
fmt.println("遍歷map。。。")
for k,v := range m1
}
執行結果如下:
map的輸出和map裡面的內容順序沒有關係
func main()
fmt.println("獲取map值。。。")
student2 := m1["student2"]
fmt.println(student2)
}
執行結果如下:
如果student2拼寫錯誤會輸出什麼值?
func main()
fmt.println("獲取map值。。。")
student2 := m1["stduent2"]
fmt.println(student2)
fmt.println("...........")
}
執行結果如下:
輸出的繪製一行空串
如何判斷map裡面是否有這個key?
func main()
fmt.println("獲取map值。。。")
stu1,ok := m1["student2"]
fmt.println(stu1,ok)
stu2,ok := m1["stduent2"]
fmt.println(stu2,ok)
}
執行結果如下:
根據上面的執行,我們可以修改**如下:
func main()
fmt.println("獲取map值。。。")
stu1,ok := m1["student2"]
fmt.println(stu1,ok)
if stu2,ok := m1["stduent2"];okelse
}
執行結果如下:
fmt.println("刪除值")
stu1,ok := m1["student2"]
fmt.println(stu1,ok)
delete(m1,"student2")
stu2,ok := m1["student2"]
fmt.println(stu2,ok)
}執行結果如下:
go語言基礎之map
go語言中提供的對映關係容器為map,其內部使用雜湊表hash實現 map map是一種無序的基於key value的資料結構,必須初始化才能使用 package main import fmt func main fmt.println map1 判斷某乙個值是否存在 返回兩個引數,1.返回的值 ...
Go語言基礎(四) map
三 練習題 go語言中提供的對映關係容器為map,其內部使用雜湊表 hash 實現。map是一種無序的基於key value的資料結構,go語言中的map是引用型別,必須初始化才能使用。map的定義 map keytype valuetype keytype 表示鍵的型別。valuetype 表示鍵...
Go語言基礎之map
go語言中提供的對映關係容器為map,其內部使用雜湊表 hash 實現。map是一種無序的基於key value的資料結構,go語言中的map是引用型別,必須初始化才能使用。go語言中map的定義語法如下 map keytype valuetype 其中,map型別的變數預設初始值為nil,需要使用...