GO学习笔记 - map

原文链接: http://www.cnblogs.com/sunylat/p/6385852.html

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)
}

  

转载于:https://www.cnblogs.com/sunylat/p/6385852.html

猜你喜欢

转载自blog.csdn.net/weixin_30319097/article/details/94787152
今日推荐