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查看很友好

相关推荐
mumu_wangwei11 小时前
【QFS】Golang自研的QFS分布式文件系统,QFS文件系统使用
开发语言·后端·golang
codeejun13 小时前
每日一Go-66、K8s 蓝绿发布 & 金丝雀发布实战:Service 切流量 + Ingress 灰度一次讲透
开发语言·golang·kubernetes
青春喂了后端14 小时前
Go Sidecar Repository 并发锁改造:让并发请求安全地进入 Git 仓库层
git·安全·golang
2501_9318037515 小时前
Go 接口学习笔记:从语法到心法
笔记·学习·golang
pixcarp15 小时前
Redis ZSet:底层设计与实践
数据库·redis·后端·学习·golang·web
极客小云17 小时前
【用 Go 写一个统一的 LLM Token 统计库:tokencalc 的设计与实现】
开发语言·后端·golang
Vect__17 小时前
C++转go的之路:变量声明、iota、函数、切片、init、defer
开发语言·后端·golang
比特森林探险记1 天前
go 语言中的context 解读和用法
开发语言·后端·golang
jieyucx2 天前
从基础语法到面向对象:Go语言如何实现封装、继承与多态?
开发语言·后端·golang
littleschemer2 天前
Go:实现游戏服务器网关
服务器·网关·游戏·golang