• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Go语言里的slice

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1.切片是基于数组做的一层封装,灵活能够自动扩容。

2.切片的初始化方法

 

①直接创建

 

②基于已有的数组或切片

 

③使用make来创建一个切片

 

第一个5是切片的大小

第二个5是切片的容量

 

3.基本操作

①获取元素

 

②增加元素append

当达到底层的最大容量,切片会进行扩容,扩容的策略是翻倍扩容。

下图说明扩容之后,地址也变化了。

 

4.切片的修改

和数组(值传递)不一样,切片相当于是一个引用传递。

 

5.如果计算切片的容量?

例如:b切片的长度和容量是多少?

 

答案: 长度为2 容量为7

详细可以参考下面图,a、b共用底层切片,但是b是从1开始的,长度为3-1 =2,容量为a其他的底层

 

6.切片后面追加切片

func AppendSlice(){
	 slice1 := []int{1,2,3}
	 slice2 := []int{3,3,6}

	 slice1 = append(slice1,slice2... )

	for _, value := range slice1 {
		fmt.Println("value的地址",value)
	}

}

注意一下 append(slice1,slice2... ) 这个...定义就是把slice2展开,放到slice1后面。

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
2.go-GIN快速入门发布时间:2022-07-10
下一篇:
go语言基础(运算符)发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap