1.map底层实现


由图看出,其实map的底层结构体是hmap,同时hmap里面维护着若干个bucket数组(即桶数组)。bucket数组中每个元素都是bmap结构的,bmap中存储着8个key-value的键值对,如果是满了的话,当再来一个键值对的时候就会放到下一个溢出桶中,同时是通过这个overflow进行连接。如果当溢出桶过多的时候可能会发生扩容的操作,在扩容的时候会通过渐进式的方式进行扩容,oldbuckets指向原来的桶。





2.map遍历为什么是无序的

3.map为什么是非线程安全的



4.map如何查找






5.map冲突的解决方式


6.map的负载因子为什么是6.5



7.map如何扩容






8.map和sync.Map性能哪个好



















