Go语言切片怎么定义及初始化
本篇内容介绍了“Go语言切片怎么定义及初始化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
Go 语言切片(Slice)
Go 语言切片是对数组的抽象。

Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go 中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容量增大。
定义切片
你可以声明一个未指定大小的数组来定义切片:
varidentifier[]type
切片不需要说明长度。
或使用make()函数来创建切片:
varslice1[]type=make([]type,len)也可以简写为slice1:=make([]type,len)
也可以指定容量,其中capacity为可选参数。
make([]T,length,capacity)
这里 len 是数组的长度并且也是切片的初始长度。
切片初始化
s:=[]int{1,2,3}
直接初始化切片,[]表示是切片类型,{1,2,3}初始化值依次是1,2,3,其cap=len=3。
s:=arr[:]
初始化切片s,是数组 arr 的引用。
s:=arr[startIndex:endIndex]
将 arr 中从下标 startIndex 到 endIndex-1 下的元素创建为一个新的切片。
s:=arr[startIndex:]
默认 endIndex 时将表示一直到arr的最后一个元素。
s:=arr[:endIndex]
默认 startIndex 时将表示从 arr 的第一个元素开始。
s1:=s[startIndex:endIndex]
通过切片 s 初始化切片 s1。
s:=make([]int,len,cap)
通过内置函数make()初始化切片s,[]int标识为其元素类型为 int 的切片。
“Go语言切片怎么定义及初始化”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注恰卡编程网网站,小编将为大家输出更多高质量的实用文章!