Go语言中的切片

Go语言中的切片

//创建一个长度和容量都是0 的切片
	//创建一个空切片的3种方式
	//第一种:创建nil整型切片
	var slice []int
	fmt.Println(cap(slice))
	//第二种:使用make创建整型切片
	slice1 := make([]int,0)
	fmt.Println(cap(slice1))
	//第三种:使用切片字面量来创建空切片
	slice2 := []int{}
	fmt.Println(cap(slice2))

空切片在底层数组中包含0个元素,也没有分配任何存储空间。想表示空集合时空切片很有用,例如,数据查询返回0个查询结果时。

使用切片

切片之所以叫做切片,是因为创建一个新切片就是把底层数组切出一部分。

	//切片的真谛
	miller_slice := []int{10,20,30,40,50}
	new_miller_slice = miller_slice[1:3] //长度为2,容量为4

需要注意的是现在两个切片共享一个底层数据。如果一个切片修改了该底层数组的共享部分,另一个切片也能感知到。

切片市有额外的容量的,但是如果不能把这个容量合并到切片的长度里,这些容量就没有用处。好在可以用Go语言的内置函数append来做这种合并很容易。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值