《日子》golang-切片slice

切片Slice

-其本身并不是数组,它指向底层的数组
-作为变长数组的替代方案,可以关联底层数组的局部或全部
-为引用类型
-可以直接创建或从底层数组获取生成
-使用len()获取元素个数,cap()获取容量
-一般使用make()创建
-如果多个slice指向相同底层数组,基中一个的值改变会影响全部

-make([]T,len,cap)
-其中cap可以省略,则和len的值相同
-len表示存数的元素个数, cap表示容量

声明
-var s1 []int

-s1 := make([]int, 3, 5)

Reslice

-Reslice时索引以被slice的切片为准
-索引不可以超过被slice的切片的容量cap()值
-索引越界不会导致底层数组的重新分配而是引发错误

Append

-可以在slice尾部追加元素
-可以将一个slice追加在另一个slice尾部
-如果最终长度未超过追加到slice的容量则返回原始slice
-如果超过追加到的slice的容量则将重新分配数组并拷贝原始数据

Copy
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 其本身并不是数组,它指向底层的数组作为变长数组的替代方案,可以关联底层数组的局部或全部为引用类型可以直接创建或从底...
    haokeed阅读 246评论 0 0
  • 切片 切片定义: 切片(slice)是对数组一个连续片段的引用,所以...
    liuxuech阅读 847评论 0 0
  • 切片slice 本身并不是数组,它指向底层的数组 作为变长数组的替代方案,可关联底层数组的局部或全部 数据类型为引...
    kaxi4it阅读 516评论 0 0
  • -1- 谢天谢地,在中餐厅开业三天之后,黄晓明和赵薇这对老友终于磨合完毕了。 讲真,头三天里感觉两个人不像是来合作...
    芊语芊寻阅读 4,157评论 28 36
  • 时过迁境。 当我再次步入这所承载着我们三年欢乐岁月的教室;当指尖滑过一张又一张布满尘埃的桌椅。回首过往,一幕幕往事...
    vivid12607阅读 256评论 1 2