1. 章节简介
- 使用
make 创建切片,可以指定长度和容量,更高效控制内存。
2. 知识点讲解
s := make([]int, length, capacity)
-
length → 当前元素数量
-
capacity → 底层数组容量
- 追加元素
s = append(s, 1,2,3)
3. 代码示例
package main
import "fmt"
func main() {
s := make([]int, 3, 5) // 长度3,容量5
fmt.Println("Initial slice:", s, "len:", len(s), "cap:", cap(s))
s[0] = 10
s[1] = 20
s[2] = 30
fmt.Println("After assigning:", s)
s = append(s, 40, 50)
fmt.Println("After append:", s, "len:", len(s), "cap:", cap(s))
s = append(s, 60) // 自动扩容
fmt.Println("After exceeding capacity:", s, "len:", len(s), "cap:", cap(s))
}
4. 练习任务
- 用
make 创建长度 4,容量 6 的切片,并赋值。
- 追加多个元素,观察容量变化。
- 打印每次操作后的长度和容量。
5. 小结
-
make 创建切片并指定容量,避免频繁扩容。
- 切片长度与容量不同,追加超出容量会自动扩容。
网友评论