golang ---常用函数:make
2024-09-02 08:53:01
简介
内建函数 make 用来为 slice,map 或 chan 类型分配内存和初始化一个对象(注意:只能用在这三种类型上)
slice
// 长度为5,容量为10的slice,slice中的元素是int
var slice_ []int = make([]int,5,10)
fmt.Println(slice_) var slice_1 []int = make([]int,5)
fmt.Println(slice_1) var slice_2 []int = []int{1,2}
fmt.Println(slice_2)
打印结果:
[0 0 0 0 0]
[0 0 0 0 0]
[1,2]
用第三个参数设置该slice的容量(即底层数组的长度)。如果能够预足容量,那么在slice中数据增长的过程中不需要更换底层数组(附带拷贝过程),这样效率更高
map
var m_ map[string]int = make(map[string]int)
m_["one"] = 1
fmt.Println(m_) var m map[string]int = map[string]int{"1":1}
m["2"] = 2
fmt.Println(m)
打印结果:
map[one:1]
map[1:1 2:2]
根据 size 大小来初始化分配内存,不过分配后的 map 长度为 0,如果 size 被忽略了,那么会在初始化分配内存时分配一个小尺寸的内存
chanel
管道缓冲区依据缓冲区容量被初始化。如果容量为 0 或者忽略容量,管道是没有缓冲区的
最新文章
- SQL 截取字符串
- Nopcommerce主要的技术
- asp.net脚本获取不到id,服务器控件id生成html页面id控制
- Android Eclipse 里面依赖工程无法关联源码解决方案
- Oracle一些常用的查询命令总结(持续更新)
- Cisco asa 5510升级IOS和ASDM
- css笔记 css用法:
- GridView ItemCommand
- 用vld分析C++内存泄漏
- %s的用法
- eclipse 添加resources 目录
- 关于jstl.jar引用问题及解决方法
- Docker快速指南
- noip2011 玛雅游戏 大模拟
- ArcGIS——2015年安徽各市GDP总量分级图(3等级)
- SpringBoot集成RabbitMQ 从零到一,学会MQ异步和解耦--
- React了解
- SpringBoot2.0+ DataSourceInitializer不生效的问题
- CentOS6.5 安装Storm集群
- Python 读写
热门文章
- 计蒜客 41387.XKC's basketball team-线段树(区间查找大于等于x的最靠右的位置) (The Preliminary Contest for ICPC Asia Xuzhou 2019 E.) 2019年徐州网络赛
- 重装了服务器,用的是centos/php微信小程序版,centos 命令大全
- UE运行sas配置-WIN10
- uniapp - 富文本编辑器editor(仅支持App和微信小程序)
- Invalid bound statement (not found) 终极解决办法
- Mac Mini 2014 更换SSD 升级SSD
- C++中深入理解dynamic_cast
- vue中axios使用二:axios以post,get,jsonp的方式请求后台数据
- java agent 详细介绍 -javaagent参数
- Java 文件句柄泄露问题解决小记(转)