视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:Go语言自学系列 | 汇总_COCOgsta的博客-CSDN博客


切片的初始化方法很多,可以直接初始化,也可以使用数组初始化等。

切片如何切分

package mainimport "fmt"// 切片
func test1() {var s1 = []int{1, 2, 3, 4, 5, 6}s2 := s1[0:3] // [)fmt.Printf("s2: %v\n", s2)s3 := s1[3:]fmt.Printf("s3: %v\n", s3)s4 := s1[2:5]fmt.Printf("s4: %v\n", s4)s5 := s1[:]fmt.Printf("s5: %v\n", s5)
}func main() {test1()
}

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
s2: [1 2 3]
s3: [4 5 6]
s4: [3 4 5]
s5: [1 2 3 4 5 6]

直接初始化

package mainimport "fmt"func main() {s := []int{1, 2, 3}fmt.Printf("s: %v\n", s)
}

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
s: [1 2 3]

使用数组初始化

package mainimport "fmt"func main() {arr := [...]int{1, 2, 3}s1 := arr[:]fmt.Printf("s1: %v\n", s1)
}

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
s1: [1 2 3]

使用数组的部分元素初始化(切片表达式)

切片的底层就是一个数组,所以我们可以基于数组通过切片表达式得到切片。 切片表达式中的low和high表示一个索引范围(左包含,右不包含),得到的切片长度=high-low,容量等于得到的切片的底层数组的容量。

package mainimport "fmt"func main() {arr := [...]int{1, 2, 3, 4, 5, 6}s1 := arr[2:5]fmt.Printf("s1: %v\n", s1)s2 := arr[2:]fmt.Printf("s2: %v\n", s2)s3 := arr[:3]fmt.Printf("s3: %v\n", s3)
}

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
s1: [3 4 5]
s2: [3 4 5 6]
s3: [1 2 3]

空(nil)切片

一个切片在未初始化之前默认为 nil,长度为 0,容量为0.

package mainimport "fmt"func main() {var s1 []intfmt.Println(s1 == nil)fmt.Printf("len: %d, cap: %d\n", len(s1), cap(s1))
}

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
true
len: 0, cap: 0

Go语言自学系列 | golang切片的初始化相关推荐

  1. Go语言自学系列 | golang标准库bytes

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  2. Go语言自学系列 | golang标准库bufio

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  3. Go语言自学系列 | golang中的if语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  4. Go语言自学系列 | golang中的if else语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  5. Go语言自学系列 | golang for range循环

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  6. Go语言自学系列 | golang数组

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  7. Go语言自学系列 | golang开发工具

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  8. Go语言自学系列 | golang标准库os模块 - File文件读操作

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  9. Go语言自学系列 | golang函数的参数

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

最新文章

  1. Java项目:银行管理系统+文档Java基础Gui(java+Gui)
  2. 好友国自然基金获批!畅饮之余透露给我这个秘密
  3. 三极管和MOS管有什么不一样?用MOS管还是三极管?
  4. cglib源码学习交流
  5. 财务自由的味道!台积电股价连创新高,经营团队15人持股价值过亿
  6. 二开要饭网免费开源源码
  7. 七周成为数据分析师 第五周:Mysql
  8. 惋惜!杭州互联网公司22岁女孩猝死!某大厂家属怒喷996的工作方式...
  9. hive新功能 Cube, Rollup介绍
  10. 基于深度学习股票预测系统
  11. 为Synaptics驱动的触摸板安装精确式触摸板
  12. 我买了一辆奥迪,然后……
  13. 服务器维护灵魂兽刷新吗,抓灵魂兽的各种辛酸,魔兽世界猎人当年抓灵魂兽用过的黑科技漫谈...
  14. 【语音算法】使用端点检测和百度语音识别技术实现视频的字幕生成
  15. MDA110-16-ASEMI单臂共阳极整流模块MDA110-16
  16. echarts 柱状图,每根柱子显示不同颜色
  17. “.plt“文件转png格式图片简写
  18. 《天空之音VR》即将发售,挥手击中音符就能秒变“节奏大师”
  19. 卧槽,QQ号终于能修改了!
  20. 在Windows10下下载编译历史版本chromium

热门文章

  1. 微星h61m主板jsp1接线图_微星主板jspi1怎么接,jspi1怎么接线
  2. 文字转语音的api接口
  3. php 发送 hotmail,PHP mail()函数无法发送到hotmail? - 程序园
  4. H-Store:一种分布式内存数据库管理系统
  5. mysql8修改密码之后无法登陆_MySQL 8.0 用户管理 更改密码 创建用户登录 遇到很迷的问题...
  6. [转]Redis2.8从入门到精通文档
  7. 使用必须、应该、可以来确定每天事情的优先级
  8. 软件工程--实践者的研究方法[体系结构设计]
  9. CSS 读书笔记
  10. 零基础学java web开发_从零基础学Java成为一个专业的java web 开发者