【go】切片截取总结

文章目录

1.获取切片的第i个元素

go 复制代码
func main() {
	s := []int{1, 2, 3, 4, 5}
	fmt.Println("第一个元素为:", s[0])
	fmt.Println("最后一个元素为:", s[len(s)-1])
	fmt.Println("倒数第二个元素为:", s[len(s)-2])
}

2.获取切片的第i个至第j个元素

go 复制代码
func main() {
	s := []int{1, 2, 3, 4, 5}
	fmt.Println("从索引2到最后的全部元素:", s[2:])
	// 3 4 5
	fmt.Println("从索引0到索引2的全部元素:", s[:2])
	// 0 1 2
	fmt.Println("从索引2到索引4的全部元素:", s[2:3:3])
	// 3 4
}

3.各种切片截取操作

操作 含义
s[n] 切片s中索引位置为n的项
s[:] 从切片s的索引位置0到len(s)-1处所获得的切片
s[low:] 从切片s的索引位置low到len(s)-1处所获得的切片
s[:high] 从切片s的索引位置0到high处所获得的切片,len=high
s[low:high] 从切片s的索引位置low到high处所获得的切片,len=high-low
s[low :high : max] 从切片s的索引位置low到high处所获得的切片,len=high-low,cap=max-low
len(s) 切片s的长度,总是<=cap(s)
cap(s) 切片s的容量,总是>=len(s)
相关推荐
艾莉丝努力练剑16 小时前
【C++:继承】面向对象编程精要:C++继承机制深度解析与最佳实践
开发语言·c++·人工智能·继承·c++进阶
penguin_bark16 小时前
C++ 异步编程(future、promise、packaged_task、async)
java·开发语言·c++
小龙报16 小时前
《数组和函数的实践游戏---扫雷游戏(基础版附源码)》
c语言·开发语言·windows·游戏·创业创新·学习方法·visual studio
又是忙碌的一天16 小时前
Java基础 与运算
java·开发语言
liu****16 小时前
笔试强训(八)
开发语言·算法·1024程序员节
m0_7482412316 小时前
Java注解与反射实现日志与校验
java·开发语言·python
nianniannnn17 小时前
Qt布局管理停靠窗口QDockWidget类
开发语言·数据库·c++·qt·qt5·qt6.3
一成码农17 小时前
3w字一文讲透Java IO
java·开发语言
Yeats_Liao17 小时前
Go Web 编程快速入门 07.4 - 模板(4):组合模板与逻辑控制
开发语言·后端·golang
lightqjx17 小时前
【C++】list 常见使用和模拟实现
开发语言·c++