今天在查找Go资料的时候,偶然中在点进看云中的《Go入门指南》这本书,简单的看了下书中的内容,然后看到有一节内容是描述 “误用字符串”的一个小节,从中了解到go中字符串拼接如果直接用 + 进行拼接的话,效率会比较低,当在for循环次数比较多的时候比较明显,然后我就测试了。那边书中上提供的是用另外一种方式,在for循环次数比较多的时候,比较适合。然后我就写代码进行简单测试对比了下,两者的效率比较大。
(1)这是直接用 + 拼接字符串,for执行100000的结果:
package mainimport ( "fmt" "time")func main() { var s string bT := time.Now() for i := 0; i < 100000; i++ { s += "1" } eT := time.Since(bT) fmt.Println("Run time: ", eT) }// Run time: 1.1867993s
(2)这是用另一种方式进行for,100000的结果:
package mainimport ( "bytes" "fmt" "time")func main() { var b bytes.Buffer bT := time.Now() for i := 0; i < 100000; i++ { b.WriteString("1") } eT := time.Since(bT) fmt.Println("Run time: ", eT) }// Run time: 2.0005ms
发现两者的差距比较明显
作者:laijh
链接:https://www.jianshu.com/p/b8ba88fdc992
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦