/*创建切片*/numbers := []int {1,2,3,4,5,6,7,8,9,0}printSlice(numbers)/*打印原始切片*/fmt.Println("numbers ==" , numbers)/*打印子切片  从索引1到索引4(不包含1和4)*/fmt.Println("numbers[1~4] ==",numbers[1:4])




package mainimport "fmt"func main() {var numbers []intprintSlice(numbers)if(numbers == nil){fmt.Printf("切片是空的")}
}func printSlice(x []int){fmt.Printf("len=%d cap=%d slice=%v\n",len(x),cap(x),x)
}
/*默认下限为0*/fmt.Println("numbers[:3] == ",numbers[:3])/*默认上限为len(s)*/fmt.Println("numbers{0:}==",numbers[0:])numbers1 := make([]int ,0,5)printSlice(numbers1)}func printSlice (x []int) {fmt.Printf("len=%d cap=%d slice=%v\n" , len(x),cap(x),x)


package main
import "fmt"
func main() {
var numbers []int
printSlice(numbers)
/* 允许追加空切片 */
numbers = append(numbers, 0)
printSlice(numbers)
/* 向切片添加一个元素 */
numbers = append(numbers, 1)
printSlice(numbers)
/* 同时添加多个元素 */
numbers = append(numbers, 2,3,4)
printSlice(numbers)
/* 创建切片 numbers1 是之前切片的两倍容量*/
numbers1 := make([]int, len(numbers), (cap(numbers))*2)
/* 拷贝 numbers 的内容到 numbers1 */
copy(numbers1,numbers)
printSlice(numbers1)
}
func printSlice(x []int){
fmt.Printf("len=%d cap=%d slice=%v\n",len(x),cap(x),x)
}
												

Go 语言切片(Slice)相关推荐

  1. 【Go】Go 语言切片(Slice)

    文章目录 一.切片 二.声明切片 方法1 方法2 总结:创建切片的各种方式 三.切片初始化 1. 声明的同时初始化 2. 用数组初始化切片 3. 切片的内存布局: 读写操作实际目标是底层数组,只需注意 ...

  2. go语言基础数据结构学习---- 数组, 列表(list)和切片(slice)

    go语言基础数据结构学习–> 数组, 列表(list)和切片(slice) go 语言中的 数组是类型相同的元素的集合, 列表是双链表的容器, 可以添加不同类型的数据切片是对现有数组的引用, 比 ...

  3. 深度解密Go语言之Slice

    Go 语言的 slice 很好用,不过也有一些坑.slice 是 Go 语言一个很重要的数据结构.网上已经有很多文章写过了,似乎没必要再写.但是每个人看问题的视角不同,写出来的东西自然也不一样.我这篇 ...

  4. 位置2的索引超出数组范围不能超过10_golang学习笔记--切片slice 与数组 arr

    因为我是写php的,刚开始写go的时候老是被数组坑.因为在go中的数组是固定长度,所以会存在越界的时候.而在go中也很少直接使用数组.更多的时候会使用slice(切片). 数组 数组是一个由固定长度的 ...

  5. 切片 go 去除第一个_golang学习笔记--切片slice 与数组 arr

    因为我是写php的,刚开始写go的时候老是被数组坑.因为在go中的数组是固定长度,所以会存在越界的时候.而在go中也很少直接使用数组.更多的时候会使用slice(切片). 数组 数组是一个由固定长度的 ...

  6. Go开发 之 容器(数组Array、切片slice、映射map、列表list)

    文章目录 0.唠唠叨叨 1.数组-Array 1.1.什么是数组 1.1.1.数组的声明 1.1.2.比较两个数组是否相等 1.1.3.示例 1.1.3.1.通过索引下标访问元素 1.1.3.2.数组 ...

  7. Golang 入门 : 切片(slice)

    切片(slice)是 Golang 中一种比较特殊的数据结构,这种数据结构更便于使用和管理数据集合.切片是围绕动态数组的概念构建的,可以按需自动增长和缩小.切片的动态增长是通过内置函数 append( ...

  8. 文心一言 VS 讯飞星火 VS chatgpt (19)-- go语言的slice和rust语言的Vec的扩容流程是什么?

    go语言的slice和rust语言的Vec的扩容流程是什么? 文心一言: 在Go语言中,slice(切片)和Rust语言中的Vec都是用于存储一组固定长度的元素的数据结构.它们的扩容流程略有不同,下面 ...

  9. 2023-05-20:go语言的slice和rust语言的Vec的扩容流程是什么?

    2023-05-20:go语言的slice和rust语言的Vec的扩容流程是什么? 答案2023-05-20: go语言的slice扩容流程 go版本是1.20.4. 扩容流程见源码见runtime/ ...

  10. Golang如何遍历切片slice

    前言 这两天用golang开发一个把企业微信的打卡记录同步到HR-OA系统的一个中间表的功能,同步时把从企业微信接口里查询到的打卡记录放到一个对象的切片里,然后遍历切片把每条打卡记录写到中间表,这里涉 ...

最新文章

  1. 数学工具WZgrapher
  2. 科学就是要勇于承认错误:十大错误科学结论盘点
  3. CI框架css引入出现问题
  4. Html5 绘制旋转的太极图
  5. 第四讲 一阶线性ODE换元法
  6. 科技人员在计算机前的肖像,首个全国科技工作者日来了 西南大学学子为科技工作者画像...
  7. 什么时候需要好教材和好教材是怎样的
  8. 人人开源 VUE项目报错./src/assets/scss/index.scssModule build failed: Error: ENOENT: no such file or direct
  9. Python的内建属性和内建函数
  10. CSS清除浮动的五种常用方法
  11. solr 高并发_高血压常见的并发症,这些疾病和高血压一起治,疗效才好
  12. JavaScript学习总结(14)——12个令人惊叹的JavaScript技巧
  13. IIS设置HTTP To HTTPS
  14. jdk的java和javac命令
  15. 线程池及其实现文章一
  16. 【Flutter】基础组件【08】BottomNavigationBar
  17. 分享一下我制作的Bat批处理程序-PC Tools(含源码)
  18. Diablo3英雄榜-使用Volley和Gson来处理暴雪API的Json数据
  19. 南京信息工程大学计算机类专业排名,2019年南京信息工程大学优势专业排名及分数线...
  20. 电脑热点的连接问题(基于现有IPhone12)

热门文章

  1. 二叉树的定义、性质、存储
  2. 转:Excel导入SQL数据库完整代码
  3. 数据结构趣题——顺序表就地逆置
  4. asp.net操作Excel总结
  5. html5水调歌头代码,张惠言的五首《水调歌头》
  6. python requests请求失败重试_Python Requests.post()请求失败时的retry设置
  7. Java黑皮书课后题第6章:**6.24(显示当前日期和时间)程序清单2-7显示当前时间。改进这个例子,显示当前的日期和时间。程序清单6-12中的日历例子可以提供一些如何提供如何求年月日的思路
  8. 课堂派派典型用户和场景
  9. 客户端(STS)连接服务器上redis时的问题
  10. Vue子组件与父组件之间的通信