1
rrfeng 318 天前 via Android
看起来最后一种没啥毛病了。
另外这点开销大部分情况下你都不用关心… |
3
GopherDaily 318 天前
|
4
Ericcccccccc 318 天前
一般就是你最后那种写法.
|
5
matrix1010 318 天前
没有银弹。假如你的 source 有 100 万个元素但过滤完只有 10 个指定 capacity 就比较浪费了。或者如果 source 没有用你甚至可以直接写回 source 里不用 make 一个新 slice
|
6
sunznx 318 天前
先瞎 j8 写,有性能问题再改,花里胡哨,什么网站的流量需要考虑这些鬼东西
|
7
CLMan 318 天前
如果能预估最大容量,就是第 3 种写法。
go 的 slice 和 java 的 ArrayList 差不多,就是我们在数据结构与算法里面学到的基于数组实现的列表,基本的扩容策略是双倍扩容:每次 cap*2 ,摊还每次插入 O(1)。 所以第三种写法是在使用数组实现的列表时的常识,与具体语言无关。 |
8
hzzhzzdogee 313 天前
纯复制的时候我喜欢直接
`copy()` |