乐趣区

关于go:Go题库12slice和array区别

题目解析 GOLANG ROADMAP 社区

答案 (engine)

array 是固定长度的数组,是值类型的,如果进行赋值或者作为函数参数,实际上整个数据都会被从新拷贝一份。

应用前必须申明长度

arr := [5]int

而 slice 属于援用类型,是一个不定长的,总是指向底层的数组 array 的数据结构。作为函数参数时,slice 传递的是指针。

创立时不须要指定长度

var s []int
s := make([]int,10)
s :=[]int{1,2,3}

本文由:GOLANG ROADMAP 社区 公布

退出移动版