教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 go语言常用函数:make

go语言常用函数:make

发布时间:2023-01-21   编辑:jiaochengji.com
教程集为您提供go语言常用函数:make等资源,欢迎您收藏本站,我们将为您提供最新的go语言常用函数:make资源

转自

简介

内建函数 make 用来为 slice,map 或 chan 类型分配内存和初始化一个对象(注意:只能用在这三种类型上)

代码

使用make来创建slice,map,chanel说明如下:

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 或者忽略容量,管道是没有缓冲区的 (?)

到此这篇关于“go语言常用函数:make”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
想系统学习GO语言(Golang
go语言并发编程
Go语言内存分配机制
go run main.go 参数_Go语言入门:Hello world
图解 Go 并发编程
go语言基础语法
Go语言发展历史、核心、特性及学习路线
Go语言基础(3)
初识 go 语言:方法,接口及并发
276-go语言golang面试题知识点

[关闭]
~ ~