golang slice 切片

栏目: Go · 发布时间: 6年前

// 切片 // 1: 占用资源很小 // 2: slice[a:b] 包含a索引值,不包含b索引值,默认容量上界索引为被操作对象容量上界索引 // 3: slice[a:b:c] 包含a索引值,不包含b索引值,容量上界索引为c // 4: slice 只能向后扩展,不能向前扩展 // 5: slice append // (1)某次操作未超过该slice容量上界索引,此次改变会更新原数组; // (2)某次操作超过该slice容量上界索引则新的被操作对象数组会被新建,此次改变不会更新原数组 numArr := [10]uint{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} slice0 := numArr[3:9] // 容量上界索引为10 slice1 := numArr[3:6:8] // 容量上界索引为8 slice1 = append(slice1, 100) // 此次 未超过该slice容量上界索引 更新原数组, 不新建数组 slice1 = append(slice1, 100, 100) // 此次 超过该slice容量上界索引 不更新原数组, 新建数组 for i := 0; i < len(slice0); i++ { fmt.Println(i, slice0[i]) } fmt.Println("slice0 ==>", len(slice0), cap(slice0)) for i := 0; i < len(slice1); i++ { fmt.Println(i, slice1[i]) } fmt.Println("slice1 ==>", len(slice1), cap(slice1)) 运行结果: 0 3 1 4 2 5 3 100 4 7 5 8 slice0 ==> 6 7 0 3 1 4 2 5 3 100 4 100 5 100 slice1 ==> 6 10

入群交流(该群和以上内容无关):Go中文网 QQ交流群:731990104 或 加微信入微信群:274768166 备注:入群; 公众号:Go语言中文网


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java5.0Tiger程序高手秘笈

Java5.0Tiger程序高手秘笈

BrettMclaughlin / 东南大学出版社 / 2005-10 / 28.00元

代号为 “Tiger”的下一个 Java 版本,不只是个小改动版。在语言核心中有超过 100 项以上的变动,同时有大量的对 library 与 API 所做的加强,让开发者取得许多新的功能、工具与技术。但在如此多的变化下,应该从何处开始着手?也许可以从既长又无趣的语言规范说明书开始看起;或等待最少 500 页的概念与理论巨著出版;甚至还可以直接把玩新的 JDK 看看能够有什么发现;或者借由《Jav......一起来看看 《Java5.0Tiger程序高手秘笈》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具