📅  最后修改于: 2023-12-03 15:01:00.219000             🧑  作者: Mango
在 Go 语言中,切片是一种动态数组的实现,可以根据需要动态增加或缩小元素个数。切片的初始化方式有多种,本文将分别介绍。
直接初始化可以通过使用花括号语法来创建和初始化一个切片。例如:
fruits := []string{"apple", "banana", "cherry"}
上述代码中,切片 fruits 被创建并且三个元素被设置为 "apple", "banana", 和 "cherry"。
使用内置的 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 函数来动态添加元素到一个已经初始化的切片中。
fruits := []string{"apple", "banana"}
fruits = append(fruits, "cherry")
上述代码中,首先初始化一个含有两个元素的 fruits 切片,然后使用 append 函数向 fruits 中追加了一个新的元素 "cherry"。
以上是几种常见的 Go 切片初始化方式。可以根据需要选择适合的初始化方式。