goland map学习-实践使用练习:判断存在及遍历

对于数据:

复制代码
type Person struct {
	Address string
	Age     int
	Job     string
	Name    string
}

type People map[string]Person

var per = People{
	"1": Person{
		Address: "1",
		Age:     1,
		Job:     "1",
		Name:    "1",
	},
	"2": Person{
		Address: "2",
		Age:     2,
		Job:     "2",
		Name:    "2",
	},
}

对于map-struct式的数据来做一些测试实验:

1,判断map的key是否存在,直接使用如下代码段来检查:

复制代码
	if _, exist :=,map_obj[key]; exist {
	    ...
	} 

2,map数据遍历通常使用for range来遍历其中每个key-val

复制代码
for key, val := range map_obj{
		...
	}

或者只取key值:

复制代码
	for key := range map_obj {
		fmt.Println(key)
	}

3,对于struct数据格式化输出:

复制代码
       per_json, _ := json.MarshalIndent(per, "", "  ")
		fmt.Println(string(per_json))

对于打印log查看很友好

相关推荐
robin59111 小时前
容器-PUSH镜像卡住问题排查
容器·golang·kubernetes
风生u2 小时前
Go中的反射
golang·反射
T.O.P_KING2 小时前
Common Go Mistakes(IV 字符串)
开发语言·后端·golang
Hello.Reader3 小时前
用纯 Go 实现一个 AES-128 加密 m3u8 视频下载器(不依赖 ffmpeg)
golang·ffmpeg·音视频·m3u8
Zfox_4 小时前
【Go】异常处理、泛型和文件操作
开发语言·后端·golang
zhangyanfei014 小时前
谈谈 Golang 中的线程协程是如何管理栈内存的
开发语言·后端·golang
q***04635 小时前
[golang][MAC]Go环境搭建+VsCode配置
vscode·macos·golang
小信啊啊9 小时前
Go语言结构体
golang·go
古城小栈9 小时前
Go中 巧妙解决 同主版本多子版本共存
后端·golang
芷栀夏10 小时前
多设备文件接力太麻烦?Go File + cpolar让传输效率翻倍
开发语言·后端·golang