数据类型-map

定义

在go语言中 map是散列表(hash表的引用),他是一个拥有键值对元素的无序集合,在这个集合中键是唯一的。可以通过键来获取,更新或移除操作,无论这个散列表有多大,这个操作基本都是通过常量时间完成的,所有可比较的类型,整型、字符串等都可作为key.

使用

func crateMap(){
	// make(map[keyTYpe] valueType)
	//创建相同键值map
	steps := make(map[string] string)
	fmt.Println(steps)
    // 创建不同键值map
	steps2 := make(map[string] int)
	fmt.Println(steps2)

	//通过字面值创建map
	var step3  map[string]string = map[string]string{
		"1":"1",
		"2":"2",
	}
	fmt.Println(step3)

	//通过短声明创建
	steo4 := map[string]int{
		"1":1,
		"2":2,
	}
	

在这里插入图片描述

操作

新增、编辑

func mapAddData(){
	m := map[string]int{
		"1":1,
		"2":2,
	}
	m["3"] = 5
	fmt.Println(m["3"])
	m["3"] = 7
	fmt.Println(m["3"])
}

在这里插入图片描述
删除

func mapDelete()  {
	m := map[string]int{
		"1":1,
		"2":2,
	}

	delete(m,"1")
	fmt.Println(m)
}

在这里插入图片描述
判断键值是否存在

func exist()  {
	m := map[string]int{
		"1":1,
		"2":2,
	}

	_,ok := m["5"]
	fmt.Println(ok)

}

在这里插入图片描述

循环和长度判断

func get()  {
	m := map[string]int{
		"1":1,
		"2":2,
	}
	for key,value := range m {
		fmt.Printf("key:%s,value:%d\n",key,value)
	}

	// len()获取map的长度
	fmt.Println(len(m))
}

在这里插入图片描述

引用 map是引用类型 当 map 被赋值为一个新变量的时候,它们指向同一个内部数据结构。因此,改变其中一个变量,就会影响到另一变量。

func mapByReferance(){
	m := map[string]int{
		"1":1,
		"2":2,
	}

	fmt.Println(m)
	newm:= m
	newm["1"]=3
	newm["5"]=6
	fmt.Println(m)
	fmt.Println(newm)

}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值