Go语言创建切片

Go语言创建切片教程

Go 语言 创建 切片 有三种方式,分别为:从 数组 创建切片、使用 make 创建切片和指定数组创建切片。

从数组创建切片

语法

var sliceName = arr[index1:index2]

参数

参数 描述
var 定义切片变量使用的关键字。
sliceName 切片变量名。
arr 数组名。
index1 数组的开始索引。
index2 数组的结束索引。

说明

创建一个切片 sliceName,该切片元素的内容是从数组 arr 的索引 index1 开始到索引 index2 结束。

使用make创建切片

语法

var sliceName []type= make([]type, len, [cap])

参数

参数 描述
var 定义切片变量使用的关键字。
sliceName 切片变量名。
type 切片的每一个元素的类型。
len 切片的长度。
cap 可选,切片的容量。

说明

创建一个切片 sliceName,该切片每一个元素的类型是 type,切片的长度为 len,容量为 cap。make 函数的第三个参数 cap,是可选参数,如果 cap 定义了值,那么 cap 的值必须大于等于 len。

指定数组创建切片

语法

var sliceName []string = []string{"HaiCoder", "haicoder"}

说明

创建一个切片 sliceName,该切片的内容就是后面的数组元素。

案例

从数组创建切片

从已存在的数组的内容创建切片

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //从已存在的数组的内容创建切片 var arrHaiCoder = [3]string{"Hello", "嗨客网", "HaiCoder"} var sliceHaiCoder = arrHaiCoder[1:3] fmt.Println("sliceHaiCoder =", sliceHaiCoder) }

程序运行后,控制台输出如下:

25 golang从数组创建切片.png

我们首先创建了一个有三个元素,每个元素都是 string 类型的数组,接着,我们使用数组索引从 1 开始到 3 结束的元素创建一个切片,并使用 print 打印切片内容。

使用make创建切片

使用 make 指定切片的长度和容量创建切片

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用make指定切片的长度和容量创建切片 var sliceHaiCoder = make([]string, 3, 3) sliceHaiCoder[0] = "Hello" sliceHaiCoder[1] = "嗨客网" sliceHaiCoder[2] = "HaiCoder" fmt.Println("sliceHaiCoder =", sliceHaiCoder) }

程序运行后,控制台输出如下:

26 golang使用make创建切片.png

我们使用 make 函数,创建了一个长度为 3 容量为 3 的切片,接着使用索引的形式给切片赋值。

指定数组创建切片

使用 make 指定切片的长度和容量创建切片

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //指定数组创建切片 var sliceHaiCoder = []string{"Hello", "HaiCoder"} fmt.Println("sliceHaiCoder =", sliceHaiCoder) }

程序运行后,控制台输出如下:

27 golang从数组创建切片.png

创建切片时,直接指定切片的内容。

Go语言创建切片总结

Go 语言创建切片有三种方式,分别为:从数组创建切片、使用 make 创建切片和指定数组创建切片。从数组创建切片语法:

var sliceName = arr[index1:index2]

使用 make 创建切片语法:

var sliceName []type= make([]type, len, [cap])

指定数组创建切片语法:

var sliceName []string = []string{"HaiCoder", "haicoder"}