Baham's Blog

Above all else, guard your heart.

Go语言-切片

转眼间感恩节到了,今天的感恩节没什么特殊,上午做实验、中午午睡、下午新开了一局骑马与砍杀

另外还听了公开课Video Game and Learning。

下面直入正题—切片Slice

切片最大特点在于其长度可变,这点与数组不同。

make/copy/append

var b = make([]int,6)
a := []int{1,2,3}
b1 := copy(b,a) //now b:1,2,3
a1 :=append(a,4)  //now a1:1,2,3,4

切片操作举例

添加切片

a = apeend(a,b...)

复制

b = make([]T ,len(a))
copy(b , a)

删除i:j

a = append (a[:i],a[j:]...)

扩展j个空元素

a = append(a , make([T], j)...)

插入j个空元素

a = append(a[:i], append(make([]T,j),a[i:]...)...) 

插入元素x

a = append(a[:i], append([]T{x},a[i:]...)...)

插入切片b

a = append(a[:i],append(b,a[i:]...)...)

弹出最后一个元素

x , a=a[len(a)-1],a[:len(a)-1]

压入x

a = append(a,x)




The Original Link: http://baham.github.io/11_28_goyu-yan-qie-pian.html
If you want to reprint it, please do under the CC BY-NC-SA 4.0

Comments