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) }
程序运行后,控制台输出如下:
我们首先创建了一个有三个元素,每个元素都是 类型的数组,接着,我们使用数组索引从 1 开始到 3 结束的元素创建一个切片,并使用 打印切片内容。
使用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) }
程序运行后,控制台输出如下:
我们使用 make 函数,创建了一个长度为 3 容量为 3 的切片,接着使用索引的形式给切片赋值。
指定数组创建切片
使用 make 指定切片的长度和容量创建切片
package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //指定数组创建切片 var sliceHaiCoder = []string{"Hello", "HaiCoder"} fmt.Println("sliceHaiCoder =", sliceHaiCoder) }
程序运行后,控制台输出如下:
创建切片时,直接指定切片的内容。
Go语言创建切片总结
Go 语言创建切片有三种方式,分别为:从数组创建切片、使用 make 创建切片和指定数组创建切片。从数组创建切片语法:
var sliceName = arr[index1:index2]
使用 make 创建切片语法:
var sliceName []type= make([]type, len, [cap])
指定数组创建切片语法:
var sliceName []string = []string{"HaiCoder", "haicoder"}