- 博客(4)
- 收藏
- 关注
原创 Golang 接口
你以前做过的最抽象的事是什么?我写了一个接口。有时候一些数据具有一个共同点,我们只需要让这些数据做他们共同点的事情。比如我定义了3个对象:鞭炮、手雷、原子弹,这些对象都有一个函数叫引爆,能爆就是它们的共同点,那么我就可以定义一个接口叫爆炸物,接口里有个引爆方法。最后输出:不用接口,直接使用f.detonate(),g.detonate()可以达成一样的效果。但那样就得关心你拿到的具体是什么,而不是我就知道这东西能炸,我只管拿来引爆就行。
2024-01-08 14:45:14 889
原创 Golang sync包与锁
比如执行以下代码的时候开启1000个协程,每个协程让a加1,等待1s使全部执行完毕后输出a。我们期望的a是1000,但结果总是a
2024-01-08 14:43:24 333
原创 Golang Map详解
count:map中元素个数(用len()获取)B:哈希桶数量的对数(假如有8个哈希桶则有B=log2(8)=3)buckets:指向哈希桶数组的指针bucketCnt默认为8,也就是每个哈希桶容量为8,可存贮8个键值对。除了有tophashs(用于存储key的hash值高位的数组),哈希桶里还有keys(键的数组),values(值的数组),overflow(溢出桶指针,如果有溢出则指向下一个额外哈希桶)
2023-12-31 14:50:23 794 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人