map

map[key]value

map[鍵類型]值類型

var m map[int]string = map[int]string{1: "a", 2: "b"}

for k, v := range m {
    fmt.Println(k, v)
}

輸入字符串 統(tǒng)計(jì)字母出現(xiàn)次數(shù)

var str string
fmt.Scan(&str)
  //將字符串轉(zhuǎn)成切片
slice := []byte(str)
maps := make(map[byte]int)
for i := 0; i < len(slice); i++ {
    maps[slice[i]]++
}
for k,v:=range maps{
    fmt.Printf("%c:%d\n",k,v)
}
    hello
    l:2
    o:1
    h:1
    e:1

map中的key必須支持== != 一般建議基本類型

delete(m,key)刪除map中的數(shù)據(jù)
//在進(jìn)行數(shù)據(jù)刪除時(shí),key不存在不會(huì)報(bào)錯(cuò)

map作為函數(shù)參數(shù)

  • 地址傳遞
  • 引用傳遞
  • 形參和實(shí)參指向內(nèi)存中相同的地址段 修改形參會(huì)影響實(shí)參的值
m:=map[int]string{1:"a",2:"b",3:"c"}
fmt.Printf("%p\n",m)
demoMap(m)
fmt.Println(m)

func demoMap(m map[int]string){
fmt.Printf("%p\n",m)
m[4]="d"
m[5]="e"
fmt.Println(m)
delete(m,5)
fmt.Println(m)
}


0xc0000682d0
0xc0000682d0
map[1:a 2:b 3:c 4:d 5:e]
map[1:a 2:b 3:c 4:d]
map[1:a 2:b 3:c 4:d]
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容