Maps

Maps

1.map的定义

  map语法为:var a map [键值类型] value值类型

  map是指在Go中将值(value)与键(key)关联的内置函数,可通过相应的键可以获取到值。map的空值是nil类型。

package main

import "fmt"

func main() {
        var a map[int]string
        fmt.Println(a)          # 如果只是初始化不赋值,那么map便是nil类型
        if a==nil{
        fmt.Println("xxxx")     # 打印结果>>>:xxxx
    }
}

 2.map的赋值和取值

  如果想添加元素到nil map中,必须使用 make 函数初始化。获取map 元素语法是 map[key]。

package main 

import "fmt"

func main() {
    var a map[int]string = make(map[int]string)   # 定义和初始化的第一种方式
    fmt.Println(a)     # >>>:map[] 
    a[1] = "10"
    a[2] = "20"
    a[3] = "30"
------------------------------------------------
    var a = map[int]string{1:"10",2:"20",3:"30"}   # 定义和初始化的第二种方式
    fmt.Println(a)       # >>>:map[1:10 2:20 3:30]
    fmt.Println(a[4])    # 如果取一个不存在的key值,返回的value是一个空值。
}

 3.删除元素

  删除 map 中 key的语法是:delete(map, key)。这个函数没有返回值。

package main 

import "fmt"

func main() {
    var a = map[int]string{1:"10",2:"20",3:"30"}   
    delete(a, 2)
    fmt.Println(a)       # >>>:map[1:10  3:30] ,key为2的值被删除。
}

猜你喜欢

转载自www.cnblogs.com/blue-tea/p/12032205.html