Go by Example: Maps

Maps是Go语言内置的关联型数据类型(在其他语言有时候也叫做hashes或者dicts)。

package main

import "fmt"

func main() {

	// 创建一个空字典可以使用内置函数make: "make(map[键类型]值类型)"
	m := make(map[string]int)

	// 使用经典的"name[key]=value"来为键设置值
	m["k1"] = 7
	m["k2"] = 13

	// 用Println输出字典,会输出它所有的键值对
	fmt.Println("map:", m)

	// 使用 "name[key]" 获取一个键的值.
	v1 := m["k1"]
	fmt.Println("v1: ", v1)

	// 内置函数返回字典的键值对的个数
	fmt.Println("len:", len(m))

	// 内置函数delete从字典删除一个键对应的值
	delete(m, "k2")
	fmt.Println("map:", m)

	// 根据键来获取值有一个可选的第二个返回值;
	// 这个返回值表示字典中是否存在该键,
	// 如果存在为true,返回对应值,否则为false,返回零值
	// 有的时候需要使用这个返回值来判断返回结果到底是存在的值还是零值
	// 比如字典不存在键x对应的整型值,返回零值就是0,但是恰好字典中有
	// 键y对应的值为0,这个时候需要那个可选返回值来判断是否零值。
	_, ok := m["k2"]
	fmt.Println("ok:", ok)

	// 你可以用 ":=" 在定义的同时初始化一个字典
	n := map[string]int{"foo": 1, "bar": 2}
	fmt.Println("map:", n)
}

输出

$ go run maps.go 
map: map[k1:7 k2:13]
v1:  7
len: 2
map: map[k1:7]
prs: false
map: map[foo:1 bar:2]
当使用fmt.Println 打印输出字典时,输出格式为: map[k:v k:v]。


要了解更多关于字典,请查看学习Golang语言(7): 类型--字典

下一个例子: Go by Example:  Range.


英文原文

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值