# README
切片的各种append方式的benchmark
$go test -bench .
利用上述命令,可以看到。对切片进行赋值时,s[i]=i
比s=append(s, i)
的方式快4倍左右。如果s没有足够cap的话,扩充底层数组会非常耗时。cap足够的话,通过s=append(s, a...)
和s[i]=i
的耗时差不多,cap不够的话,速度会减半。
结论
修改切片的底层数组会很耗时,原先设置合理的cap,再直接修改s[i]的值最快。
$go test -bench .
利用上述命令,可以看到。对切片进行赋值时,s[i]=i
比s=append(s, i)
的方式快4倍左右。如果s没有足够cap的话,扩充底层数组会非常耗时。cap足够的话,通过s=append(s, a...)
和s[i]=i
的耗时差不多,cap不够的话,速度会减半。
修改切片的底层数组会很耗时,原先设置合理的cap,再直接修改s[i]的值最快。