91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

Go語言中映射表map的使用

發布時間:2020-07-30 21:09:13 來源:網絡 閱讀:305 作者:小韓說課 欄目:編程語言

1 概述

Go語言中的鍵值對(key->value)集合,稱之為映射map。映射map是變長類型,定義時不需要指定長度。映射map是無序的,遍歷是的順序不可期,原因是底層由hash表實現。
邏輯結構表示為:
Go語言中映射表map的使用

2 創建語法

var m = map[key_type]value_type{key1: value1, key2: value2}
var m = make(map[key_type]value_type)

// 示例,字符串型下標,字符串型值:
var m = make(map[string]string) //make()會分配內存空間,初始化。
m["east"] = "東"
m["west"] = "西"

// 直接初始化
var m = map[string]string{"east": "東", "west": "西"}

3 []下標操作

與數組類型,使用下標完成映射元素的訪問。

var m = map[string]string{"east": "東", "west": "西"}
fmt.Println(m["east"]) 
// 東
fmt.Println(m["west"]) 
// 西

4 for-range

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

遍歷的順序不可期。

5 映射是引用類型

切片為引用類型,因此切片的默認初始值為nil。
同時復制時為引用傳遞,修改會相互影響。

6 檢測元素是否存在

通過key獲取元素時,使用第二個變量,可以接收到當前key是否存在的布爾值。

var m = map[string]string{"east": "東", "west": "西"}
value, exists := m["south"]
// value: 東, exists: true

value, exists := m["south"]
// value: , exists: false

7 delete 刪除元素

delete(map, key),刪除 map 中,指定的 key。如果 key 不存在,該操作不會產生錯誤。

var m = map[string]string{"east": "東", "west": "西"}
delete(m, "west")
fmt.Println(m)
// map[east:東]

8 鍵值對調

如果 map 的值類型可以作為 key 且所有的 value 是唯一的,那么通過下面的方法可以做到鍵值對調:

var m = map[string]string{"east": "東", "west": "西"}
for k, v := range m {
  m[v] = k
}

完!
原文出自:小韓說課
微信關注:小韓說課
Go語言中映射表map的使用

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东城区| 山西省| 夏津县| 天水市| 长岛县| 友谊县| 乌拉特后旗| 东海县| 温泉县| 衡东县| 双辽市| 靖西县| 九江市| 鹤庆县| 宁安市| 河南省| 镇雄县| 旅游| 抚远县| 龙门县| 舟曲县| 淮北市| 翁源县| 华容县| 岳阳县| 溆浦县| 永川市| 固始县| 德化县| 盐山县| 行唐县| 南开区| 蕉岭县| 新巴尔虎右旗| 莱芜市| 正镶白旗| 富川| 襄城县| 新宾| 隆回县| 甘泉县|