溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

golang map如何刪除元素

發(fā)布時間:2022-12-09 09:45:31 來源:億速云 閱讀:136 作者:iii 欄目:編程語言

這篇文章主要講解了“golang map如何刪除元素”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“golang map如何刪除元素”吧!

刪除map元素的兩種方法:1、使用delete()函數(shù)從map中刪除指定鍵值對,語法“delete(map, 鍵名)”;2、重新創(chuàng)建一個新的map對象,可以清空map中的所有元素,語法“var mapname map[keytype]valuetype”。

Go語言中 map 是一種特殊的數(shù)據(jù)結(jié)構(gòu),一種元素對(pair)的無序集合,pair 對應(yīng)一個 key(索引)和一個 value(值),所以這個結(jié)構(gòu)也稱為關(guān)聯(lián)數(shù)組或字典,這是一種能夠快速尋找值的理想結(jié)構(gòu),給定 key,就可以迅速找到對應(yīng)的 value。

Go語言map元素的刪除和清空

1、使用 delete() 函數(shù)從 map 中刪除鍵值對

Go語言提供了一個內(nèi)置函數(shù) delete(),用于刪除容器內(nèi)的元素,下面我們簡單介紹一下如何用 delete() 函數(shù)刪除 map 內(nèi)的元素。

使用 delete() 內(nèi)建函數(shù)從 map 中刪除一組鍵值對,delete() 函數(shù)的格式如下:

delete(map, 鍵名)

其中 map 為要刪除的 map 實例,鍵為要刪除的 map 中鍵值對的鍵。

從 map 中刪除一組鍵值對可以通過下面的代碼來完成:

scene := make(map[string]int)

// 準(zhǔn)備map數(shù)據(jù)
scene["route"] = 66
scene["brazil"] = 4
scene["china"] = 960

delete(scene, "brazil")

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

代碼輸出如下:

golang map如何刪除元素

這個例子中使用 delete() 函數(shù)將 brazil 從 scene 這個 map 中刪除了。

2、清空 map 中的所有元素

有意思的是,Go語言中并沒有為 map 提供任何清空所有元素的函數(shù)、方法,清空 map 的唯一辦法就是重新 創(chuàng)建 一個新的 map,不用擔(dān)心垃圾回收的效率,Go語言中的并行垃圾回收效率比寫一個清空函數(shù)要高效的多。

聲明新map的方法:

var mapname map[keytype]valuetype

其中:

  • mapname 為 map 的變量名。

  • keytype 為鍵類型。

  • valuetype 是鍵對應(yīng)的值類型。

提示:[keytype] 和 valuetype 之間允許有空格。

在聲明的時候不需要知道 map 的長度,因為 map 是可以動態(tài)增長的,未初始化的 map 的值是 nil,使用函數(shù) len() 可以獲取 map 中 pair 的數(shù)目。

感謝各位的閱讀,以上就是“golang map如何刪除元素”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對golang map如何刪除元素這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI