【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)
相关推荐
MATLAB代码顾问10 分钟前
5大智能算法优化标准测试函数对比(Python实现)
开发语言·python
万粉变现经纪人2 小时前
如何解决 pip install llama-cpp-python 报错 未安装 CMake/Ninja 或 CPU 不支持 AVX 问题
开发语言·python·开源·aigc·pip·ai写作·llama
小码哥_常2 小时前
Spring Boot:别再重复造轮子,这些内置功能香麻了
后端
清风明月一壶酒2 小时前
OpenClaw自动处理Word文档全流程
开发语言·c#·word
其实防守也摸鱼2 小时前
CTF密码学综合教学指南--第五章
开发语言·网络·笔记·python·安全·网络安全·密码学
皮皮林5512 小时前
OpenFeign 首次调用卡 3 秒?八年老开发扒透 5 个坑,实战优化到 100ms!
后端
小郑加油3 小时前
python学习Day12:pandas安装与实际运用
开发语言·python·学习
AC赳赳老秦3 小时前
投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
开发语言·前端·python·eclipse·emacs·deepseek·openclaw
KuaCpp4 小时前
C++面向对象(速过复习版)
开发语言·c++
千寻girling4 小时前
《 Git 详细教程 》
前端·后端·面试