📌  相关文章
📜  go slice 初始化 - Go 编程语言 - Go 编程语言(1)

📅  最后修改于: 2023-12-03 15:01:00.219000             🧑  作者: Mango

Go Slice 初始化

在 Go 语言中,切片是一种动态数组的实现,可以根据需要动态增加或缩小元素个数。切片的初始化方式有多种,本文将分别介绍。

直接初始化

直接初始化可以通过使用花括号语法来创建和初始化一个切片。例如:

fruits := []string{"apple", "banana", "cherry"}

上述代码中,切片 fruits 被创建并且三个元素被设置为 "apple", "banana", 和 "cherry"。

使用 make 初始化

使用内置的 make 函数可以创建切片并指定底层数组的长度和容量。例如:

fruits := make([]string, 3, 5)

上述代码中,fruits 是一个长度为 3 且容量为 5 的字符串类型切片。该函数会创建一个可以容纳 5 个字符串元素的底层数组,并返回一个切片 fruits,并且该切片的前 3 个元素初始化为空字符串。

从数组或切片中初始化

可以从一个数组或切片初始化另一个切片。

fruits := [3]string{"apple", "banana", "cherry"}
fruitSlice := fruits[:2]

上述代码中,fruitSlice 是一个切片,它从 fruits 数组中初始化而来,并且包含了 fruits 的前两个元素。

vegetables := []string{"carrot", "potato", "tomato"}
vegetableSlice := vegetables[1:]

上述代码中,vegetableSlice 是一个切片,它从 vegetables 切片中初始化而来,并且包含了 vegetables 的后两个元素。

使用 append 函数初始化

可以使用 append 函数来动态添加元素到一个已经初始化的切片中。

fruits := []string{"apple", "banana"}
fruits = append(fruits, "cherry")

上述代码中,首先初始化一个含有两个元素的 fruits 切片,然后使用 append 函数向 fruits 中追加了一个新的元素 "cherry"。

总结

以上是几种常见的 Go 切片初始化方式。可以根据需要选择适合的初始化方式。