您的位置:首页 > 编程语言 > Go语言

GO学习笔记 - map

2017-02-10 12:41 435 查看
map是GO语言中的一种高级数据类型,特点是key和value对应,这和Delphi中的Dictionary一样!map的声明格式:map[key数据类型]value数据类型。使用map前,必须用make来创建!

示例:

import "fmt"

func main() {

/*
声明一个map,m是这个map的变量名。
map的key  :[]中的参数就是这个map的key,类型为string。
map的value:最后面的int类型是这个map的value。
*/
var m map[string]int
//用make创建这个map
m = make(map[string]int)

//添加key是“Answer”的元素,同时把它对应的values赋值为42
m["Answer"] = 42
fmt.Println("The value:", m["Answer"])

//修改key是“Answer”的value值为48
m["Answer"] = 48
fmt.Println("The value:", m["Answer"])

/*
检测key是“Answer”的元素是否存在,返回值为两个。
第一个:当前元素的value值,如果元素不存在则为0
第二个:是否当前元素存在的布尔值
*/
v1, ok1 := m["Answer"]
fmt.Println("The value:", v1, "Present?", ok1)

//删除key是“Answer”的map元素
delete(m, "Answer")
fmt.Println("The value:", m["Answer"])

/*
检测key是“Answer”的元素是否存在,返回值为两个。
第一个:当前元素的value值,如果元素不存在则为0
第二个:是否当前元素存在的布尔值
*/
v2, ok2 := m["Answer"]
if ok2 == true {
fmt.Println("Answer exits")
} else {
fmt.Println("Answer not exits")
}

fmt.Println("The value:", v2, "Present?", ok2)
}


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: