什么是 map
package main
import "fmt"
func main() {
var map01 map[int]string
fmt.Printf("map01 = %v,类型:%T\n", map01, map01)
if map01 == nil {
fmt.Println("空map")
}
var map02 = make(map[int]string)
fmt.Println("make 定义 map:", map02)
var map03 = map[string]int{"go": 1, "java": 2}
fmt.Println(map03)
fmt.Printf("map03类型:%T", map03)
}
map 使用
package main
import "fmt"
func main() {
var map04 = make(map[int]int)
map04[1] = 123
map04[3] = 222
map04[4] = 675423
fmt.Println(map04)
fmt.Println(map04[1])
fmt.Println(map04[2])
value, ok := map04[1]
value1, ok1 := map04[2]
fmt.Println("map中的key是否存在01:", value, ok)
if ok {
fmt.Println("map04中存在key : 1")
} else {
fmt.Println("map04中不存在key: 1")
}
fmt.Println("map中的key是否存在02:", value1, ok1)
fmt.Println("修改前:", map04)
map04[4] = 200
fmt.Println("修改后:", map04)
fmt.Println("delete 删除map某个key前:", map04)
delete(map04, 4)
fmt.Println("delete 删除map某个key后:", map04)
fmt.Println("map04的长度", len(map04))
for k, v := range map04 {
fmt.Println("for range 遍历---", "key:", k, "value:", v)
}
}
map 和 切片结合
package main
import "fmt"
func main() {
var userMap1 = make(map[string]string)
userMap1["name"] = "jack"
userMap1["age"] = "19"
userMap1["sex"] = "man"
userMap1["addr"] = "zh"
var userMap2 = make(map[string]string)
userMap2["name"] = "lisi"
userMap2["age"] = "30"
userMap2["sex"] = "woman"
userMap2["addr"] = "zh"
var userMap3 = map[string]string{"name": "zhangsna", "age": "30"}
userDatas := make([]map[string]string, 0, 10)
userDatas = append(userDatas, userMap1, userMap2, userMap3)
fmt.Println("切片:", userDatas)
for _, data := range userDatas {
fmt.Println(data["name"], data["age"])
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2019-07-02 Python进阶(十二)----re模块