go語言 內建容器之map 九

2021-08-21 11:08:35 字數 704 閱讀 3032

var mmap  map[string]string = map[string]string 

var k, v string

for k, v = range mmap

var value = mmap["a"]

fmt.printf("value=%s", value)

v, ok := mmap["a"];

fmt.printf("v=%s, ok=%s", v, ok)

fmt.println("")

if v, ok :=mmap["a"]; ok else

m := make(map[int]string)

m[1] = "love"

delete(m, 1)

建立:make(map[string]string)

獲取元素:m[key]

key不存在時,獲得value型別的初始值

用value,ok:=m[key]來判斷是否存在key

用delete刪除乙個key

使用range遍歷key,或者遍歷key, value對

不保證遍歷順序,如需順序,需手動對key排序

map使用雜湊表,必須可以比較相等

除了slice,map,function的內建型別都可以作為key

struct型別不包含上次字段,也可以作為key

GO語言內建型別map

go語言中鍵不一定只能是 string 型別。所有可比較的型別,如 boolean,interger,float,complex,string 等,都可以作為鍵 go語言中的map是hash map 是無序的 第一種 這種空的 nil var mapname map keytype valuetyp...

go內建容器

陣列 array 切片 slice 對比一下可以發現,唯一的區別就在於,陣列是使用 5 int 來進行初始化,而 slice 是使用 int。在go中,我們經常使用slice。slice的特點是,長度是可以改變的,也就是說,我們可以無限追加元素到slice中。其他特點slice與陣列並無區別。map...

go語言基礎之map

go語言中提供的對映關係容器為map,其內部使用雜湊表hash實現 map map是一種無序的基於key value的資料結構,必須初始化才能使用 package main import fmt func main fmt.println map1 判斷某乙個值是否存在 返回兩個引數,1.返回的值 ...