GO map
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | package main import "fmt" /* map 是引用类型 var name = map[keyType]valueType map的key的类型: 可以是多种类型,比如 bool,数组,string,指针,channel(管道) 大部分都是int活着string类型 使用说明: 1.使用前要make 2.key重复后者会覆盖前者 */ //map切片 切片的数据类型是map就称为是map切片 ,则map的个数就可以动态变化了 func mapSlice() { //声明map切片 monster := make([] map [string]string, 1) monster[0] = make( map [string]string) monster[0][ "2" ] = "2" monster[0][ "24" ] = "24" monster[0][ "1" ] = "1" //声明一个新map newMap := map [string]string{ "1" : "1" } //将map添加到切片中 monster = append(monster, newMap) fmt.Println( "map切片是:" , monster) } func main() { //map声明,这个时候是没有分配数据空间的 var a map [string]string //在使用前要先分用make来分配数据空间 a = make( map [string]string, 10) a[ "name" ] = "宋江" //如果key重复后者会覆盖前者 fmt.Println(a) mapUse() exercise() mapSlice() } //map的声明方式 func mapUse() { //方式一 var a map [string]string //在使用前要先分用make来分配数据空间 a = make( map [string]string, 10) fmt.Println(a) //方式二 推荐这种 比较清晰 cities := make( map [string]string) cities[ "no1" ] = "北京" fmt.Println(cities[ "no1" ]) //方式二 heroes := map [string]string{ "heroes1" : "宋江" , "heroes2" : "卢俊义" } fmt.Println(heroes) } func exercise() { // map key是string 值有事map类型 这就是二维的了 student := make( map [string] map [string]string) //只要使用到map就必须要make!!!!!!~~~~~~~~~~~~~~~~~~~~~~~~ student[ "stu1" ] = make( map [string]string) student[ "stu1" ][ "name" ] = "tom" student[ "stu1" ][ "age" ] = "20" //查找 并判断有没有这个值 v, ok := student[ "stu1" ] if ok { fmt.Println( "有stu1这个值 值是:" , v) } else { fmt.Println( "没有stu1这个值" ) } fmt.Println(student) //map删除 delete(student, "stu1" ) //map变量名称,key值 fmt.Println(student) } |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· C# 13 中的新增功能实操
· Ollama本地部署大模型总结
· 2025成都.NET开发者Connect圆满结束
· langchain0.3教程:从0到1打造一个智能聊天机器人
· 用一种新的分类方法梳理设计模式的脉络
2020-05-23 PHP数据类型,全局变量