php 创建 map,golang如何创建map
map是一堆键值对的未排序集合,类似Python中字典的概念,它的格式为map[keyType]valueType,是一个key-value的hash结构。map的读取和设置也类似slice一样,通过key来操作,只是slice的index只能是int类型,而map多了很多类型,可以是int,可以是string及所有完全定义了==与!=操作的类型。
声明map的语法如下:var map变量名 map[key] value
其中:key为键类型,value为值类型
例如:value不仅可以是标注数据类型,也可以是自定义数据类型var numbers map[string] int
var myMap map[string] personInfo
personInfo为自定义结构体,存储个人信息,定义如下type personInfo struct {
ID string
Name string
Address string
}
map初始化:
1、直接初始化(创建)rating := map[string] float32 {"C":5, "Go":4.5, "Python":4.5, "C++":2 }
myMap := map[string] personInfo{"1234": personInfo{"1", "Jack", "Room 101,..."},}
2、通过make初始化(创建)
Go语言提供的内置函数make()可以用于灵活地创建map。
创建了一个键类型为string,值类型为int的mapnumbers := make(map[string] int)
创建了一个键类型为string,值类型为personInfo的mapmyMap = make(map[string] personInfo)
也可以选择是否在创建时指定该map的初始存储能力,如创建了一个初始存储能力为5的mapmyMap = make(map[string] personInfo, 5)
创建后初始化如下:numbers["one"] = 1
myMap["1234"] = personInfo{"1", "Jack", "Room 101,..."}
更多golang知识请关注golang教程栏目。
php 创建 map,golang如何创建map相关推荐
- 记一次golang中sync.Map并发创建、读取的问题
记一次golang中sync.Map并发创建.读取的问题 cunfate https://www.jianshu.com/p/f472e79909bc 背景: 我们有一个用go做的项目,其中用到了z ...
- golang struct 转map 及 map[string]*Struct 初始化和遍历
package mainimport ("encoding/json""errors""fmt""reflect"&qu ...
- golang中创建logger时候踩过的坑
golang中创建logger时候踩过的坑 错误的代码 package mainimport ("fmt""io""log""os ...
- 由浅入深聊聊Golang的sync.Map
前言 今天在技术群中有小伙伴讨论并发安全的东西,其实之前就有写过map相关文章:由浅入深聊聊Golang的map.但是没有详细说明sync.Map是怎么一回事. 回想了一下,竟然脑中只剩下" ...
- golang struct json map 互相转化
目录 一.Json和struct互换 (1)Json转struct例子 (2)struct转json 二.json和map互转 (1)json转map例子 (2)map转Json例子 三.map和st ...
- Golang Study 三 map的顺序输出
GO语言中遍历map输出的时候是无序的,不同的遍历会有不同的输出结果,如果想要顺序输出的话,需要额外保存顺序,然后再从map中读取.随着Go语言的不断发展,官方或许会提供额外的顺序读取map方法,目前 ...
- Golang slice和map的申明和初始化
1 前言 仅供记录使用. 2 代码 /*** @Author: FB* @Description: * @File: SliceMapInit.go* @Version: 1.0.0* @Date: ...
- 1.13 golang中的Map
1. Map map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用. 1.1.1. map定义 Go语言中 map的定义语法如下 map[KeyType ...
- 一个案例彻底弄懂Go语言中的map (Golang经典编程案例)
案例要求: 判断某个用户名是否存在,若存在,则把密码改为"888888",若不存在,就增加这个用户信息(信息包括昵称nickname 和 密码pwd); key表示用户名,是唯一的 ...
最新文章
- DPDK — 安装部署(CentOS 7)
- 如何找到ngrx action匹配的取数据代码 - 谈谈Spartacus Product Carousel控件数据的读取
- Spring依赖注入技术的发展
- [转]Win7 系统安装VS2008没反应 点击安装一闪就没有反应 .
- C#Panel 控件的使用
- ubuntu搭建时间同步服务器
- python widget_python 图形界面
- js学习笔记 chapter5 引用类型
- python测试系列教程——python+Selenium+chrome自动化测试框架
- Android系统信息获取 之一:系统存储信息的获取(RAM,ROM,SDCard)
- SPPNet算法解析
- express koa koa2 优缺点分析
- AI虚拟偶像正崛起,是否可以取代你的idol?
- 2022-09-29:在第 1 天,有一个人发现了一个秘密。 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后, 每天 给一个新的人 分享 秘密。 同时给你一个整数 forg
- python爬取千图网_python爬取lol官网英雄图片代码
- scratch2.0 求救电话问答
- 【Java设计模式】——单例模式
- 如何删除复制文字产生的word回车换行符
- 如何高效管理电脑里的文件
- Python安装Selenium
热门文章
- IndexError: index 8002 is out of bounds for size 7992
- 技术报告:渗透测试分析
- 交易员期货行情分析:持续震荡,等待机会
- python单线程和多线程的区别
- Linux基础(4)-
- 【项目实战】Python基于Lasso特征选择、GM算法和SVR回归算法进行财政收入影响因素分析及预测
- 设计制作计算机组装评论,计算机组装与维护课程设计_new解析.doc
- 学习机票:如何读取PNR记录
- 覆盖诊所全流程管理,适合中大型诊所门诊的门诊管理系统
- redmine mysql 优化_Redmine性能优化方案