Golang map 扩容机制的源码解析


Golang map 扩容机制的源码解析 一、引言 在 Go 语言中,map 是一种基于哈希表的数据结构,提供高效的键值对存储和查找功能。其底层实现会根据数据规模动态调整存储空间,通过扩容机制(rehash)在避免空间浪费和保证性能方面寻找平衡。 本篇文章以 Go 1.18 为基础,深入剖析 map

🧐万万没想到!Golang Slice扩容还能这么玩!


1.Golang1.16的扩容 谈到Golang slice的扩容策略,大家可能脱口而出的就是: 1024容量下2倍扩容。 1024以上1.25倍扩容。 下面来看一个例子: Go1.16 func main() { s1 := make([]int, 1) oldLen, oldCap := l