Go切片特点笔记

特点

1.只有append操作

不支持随机增删

2.支持子切片

数组和切片都可以通过[start:end] 的形式

来获取子切片:

1.arr[start:end],获得[start,end)之间的元素。
2.arr[:end],获得[0,end)之间的元素。
3.arr[start:],获得[start,len(arr))之间的元素。

都是左闭右开!

3.内存共享问题

核心:共享数组。

子切片和切片究竟会不会互相影响,就抓住一点:

它们是不是还共享数组?

就是如果它们结构没有变化,那肯定是共享的;但是结构变化了,就可能不是共享了

什么情况下结构会发生变化?
扩容 了,

所以,任何情况下要判断是否内存共享,就注意一个点:有没有扩容。

相关推荐
('-')11 小时前
《从根上理解MySQL是怎样运行的》第十章学习笔记
笔记·学习·mysql
hd51cc11 小时前
MFC学习笔记 对话框
笔记·学习·mfc
卡提西亚11 小时前
数据库笔记-4-SQL语言之DCL
数据库·笔记·sql
Mz122111 小时前
day05 移动零、盛水最多的容器、三数之和
数据结构·算法·leetcode
SoleMotive.11 小时前
如果用户反映页面跳转得非常慢,该如何排查
jvm·数据库·redis·算法·缓存
Radan小哥11 小时前
Docker学习笔记—day0010
笔记·学习·docker
念越11 小时前
判断两棵二叉树是否相同(力扣)
算法·leetcode·入门
im_AMBER11 小时前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
黑客思维者11 小时前
LLM底层原理学习笔记:模型评估的基准测试体系与方法论
人工智能·笔记·神经网络·学习·模型评估·基准测试
andeyeluguo12 小时前
postman笔记
笔记