溫馨提示×

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

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

golang語(yǔ)言漸入佳境[17]-mapping表

發(fā)布時(shí)間:2020-06-28 01:40:15 來(lái)源:網(wǎng)絡(luò) 閱讀:322 作者:jonson_jackson 欄目:開(kāi)發(fā)技術(shù)

mapping 聲明

1
2
3
4
5
6
7
8
9
10
11
12
13
//1、聲明map的方式1
var map1 map[string]string


//2、聲明map的方式2
map2 := make(map[string]string)

//3、map中key可以是:int、float、bool、string、數(shù)組
// 一定不可以是:切片、函數(shù)、map
var m1 map[int]string
var m2 map[float64]string
var m3 map[bool]string
var m4 map[string]string

mapping定義與初始化

1、聲明時(shí)同時(shí)初始化

1
2
3
4
5
6
7
8
9
10
11
12
var country = map[string]string{
"China":  "Beijing",
"Japan":  "Tokyo",
"India":  "New Delhi",
"France": "Paris",
"Italy":  "Rome",
}
fmt.Println(country)

//短變量聲明初始化方式
rating := map[string]float64{"c": 5, "Go": 4.5, "Python": 4.5, "C++": 3}
fmt.Println(rating)

2、創(chuàng)建map后再賦值

1
2
3
4
5
6
countryMap := make(map[string]string)
countryMap["China"] = "Beijing"
countryMap["Japan"] = "Tokyo"
countryMap["India"] = "New Delhi"
countryMap["France"] = "Paris"
countryMap["Italy"] = "Rome"

mapping遍歷

(1)、key 、value都遍歷

1
2
3
for k, v := range countryMap {
 fmt.Println("國(guó)家", k, "首都", v)
}

(2)、只展示value

1
2
3
for _, v := range countryMap {
 fmt.Println("國(guó)家",  "首都", v)
}

(3)、只展示key

1
2
3
for k := range countryMap {
 fmt.Println("國(guó)家",  k , "首都", countryMap[k])
}

(4)、查看元素是否在map中存在

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

value , ok := countryMap["England"]
fmt.Printf("%q \n" , value)
fmt.Printf("%T , %v \n" , ok , ok)
if ok {
 fmt.Println("首都:" , value)
} else {
 fmt.Println("首都信息未檢索到!")
}

//第二種方式
if value ,ok :=countryMap["USA"];ok {
 fmt.Println("首都:" , value)
} else {
 fmt.Println("首都信息未檢索到!")
}

完整代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package main

import "fmt"

func main() {
//1、聲明時(shí)同時(shí)初始化
var country = map[string]string{
"China":  "Beijing",
"Japan":  "Tokyo",
"India":  "New Delhi",
"France": "Paris",
"Italy":  "Rome",
}
fmt.Println(country)

//短變量聲明初始化方式
rating := map[string]float64{"c": 5, "Go": 4.5, "Python": 4.5, "C++": 3}
fmt.Println(rating)

//2、創(chuàng)建map后再賦值
countryMap := make(map[string]string)
countryMap["China"] = "Beijing"
countryMap["Japan"] = "Tokyo"
countryMap["India"] = "New Delhi"
countryMap["France"] = "Paris"
countryMap["Italy"] = "Rome"

// 3、遍歷map(無(wú)序)
// (1)、key 、value都遍歷
for k, v := range countryMap {
fmt.Println("國(guó)家", k, "首都", v)
}
fmt.Println("-----------")

//(2)、只展示value
for _, v := range countryMap {
fmt.Println("國(guó)家",  "首都", v)
}
fmt.Println("-----------")

//(3)、只展示key
for k := range countryMap {
fmt.Println("國(guó)家",  k , "首都", countryMap[k])
}
fmt.Println("-----------")

//4、查看元素是否在map中存在
value , ok := countryMap["England"]
fmt.Printf("%q \n" , value)
fmt.Printf("%T , %v \n" , ok , ok)
if ok {
fmt.Println("首都:" , value)
} else {
fmt.Println("首都信息未檢索到!")
}

//或者
if value ,ok :=countryMap["USA"];ok {
fmt.Println("首都:" , value)
} else {
fmt.Println("首都信息未檢索到!")
}
}

mapping 刪除

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package main

import "fmt"

func main() {
//1、聲明并初始化一個(gè)map
map1 := map[string]string {
"element":"div",
"width" :"100px",
"height":"200px",
"border":"solid",
"background":"none",
}

//2、根據(jù)key刪除map中的某個(gè)元素
fmt.Println("刪除前:",map1)
if _,ok := map1["background"]; ok {
delete(map1 , "background")
}
fmt.Println("刪除后:",map1)

//3、清空map
//map1 = map[string]string{}
map1 = make(map[string]string)
fmt.Println("清空后:",map1)
}
  • 本文鏈接: https://dreamerjonson.com/2018/11/26/golang-17-mapping/

  • 版權(quán)聲明: 本博客所有文章除特別聲明外,均采用 CC BY 4.0 CN協(xié)議 許可協(xié)議。轉(zhuǎn)載請(qǐng)注明出處!

golang語(yǔ)言漸入佳境[17]-mapping表

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

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

AI