登录
首页 >  Golang >  Go教程

Golangmake创建切片详解与用法

时间:2026-04-10 11:04:25 252浏览 收藏

本文深入解析了Go语言中make函数创建切片的核心用法与关键细节,涵盖其语法结构(make([]T, len, cap))、长度与容量的灵活配置、典型使用场景(如预分配容量提升性能、零长度高容量切片适配动态追加),并清晰对比了make与new在用途、返回值和适用类型上的本质区别;掌握这些要点,能让你高效、安全地初始化切片,避免常见内存和逻辑陷阱。

Golang如何用make创建切片

在Go语言中,make 函数用于创建和初始化切片、map 和 channel。当你想创建一个切片并指定其长度和可选容量时,make 是最常用的方式。

make 创建切片的基本语法

创建切片的语法如下:

make([]T, len, cap)

其中:

  • T 是切片元素的类型
  • len 是切片的长度(必需)
  • cap 是切片的容量(可选)

如果只提供长度,容量默认等于长度。

常见用法示例

下面是几种典型的使用方式:

  • 创建长度为5的整型切片,所有元素初始化为0:
    s := make([]int, 5)
  • 创建长度为3,容量为10的字符串切片:
    s := make([]string, 3, 10)
  • 创建长度为0,容量为5的切片,适合频繁追加元素:
    s := make([]int, 0, 5)

make 与 new 的区别

make 只能用于 slice、map 和 channel,并返回对应类型的值。new 是分配内存并返回指针。例如:

ptr := new(int)

返回的是 *int,而 make 返回的是 slice 类型本身,不是指针。

小结

使用 make 创建切片时,你获得了一个已初始化的、可以立即使用的切片。它会自动分配底层数组,并将元素初始化为零值。这是创建动态切片的标准做法。

基本上就这些,不复杂但容易忽略细节。

理论要掌握,实操不能落!以上关于《Golangmake创建切片详解与用法》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>