您的位置:首页 > 编程语言 > Go语言

Golang-slice

2016-05-08 22:38 393 查看

slice

slice 是基本数组存在的,但是它提供了更加强大的功能,so使用起来也更加的方便

创建slice

类似于数组的创建方式,但是不用指明元素的个数:
s1 := []string{"fff","ddsd","ddd"}


基于make创建:

fun make([]T,len,cap) []T //T是元素的类型,len 元素的个数,cap slice 每次分配的空间大小(cap 是可选的)
s2 := make([]int,3,10)//3个元素,空间是10。当元素个数超出10之后,就再分配10


基于数组创建:

array := [...]int{2,3,34,42,32,232,13}
s3 := array[2:4] //结果:34,42. 取 array中下标为2和3的元素,不包括4

//也可以这样
s4 := array[:4] //等同于:array[0:4]
s5 := array[4:] //从下标为4到最后
s6 := array[:]


slice 的 copy 函数和 append函数

s1 := []int{7,8,9,10}
s2 := []int{1,2,3,4,5,6}
copy(s1,s2) //将s2 copy 给s1
fmt.Println(s1) //[1,2,3,4]
copy(s2,s1)
fmt.Println(s2) //[7,8,9,10,5,6]

append(s1,1,2,3) //在s1后面增加 1,2,3这三个元素
fmt.Println(s1) //s1 == [7,8,9,10,1,2,3]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: