Rumah  >  Artikel  >  pembangunan bahagian belakang  >  golang怎么拼接字符串数组

golang怎么拼接字符串数组

尚
asal
2020-01-14 09:47:195944semak imbas

golang怎么拼接字符串数组

使用strings.Join()方法拼接字符串数组:

func BenchmarkAddStringWithJoin(b *testing.B) {
    hello := "hello"
    world := "world"
    for i := 0; i < b.N; i++ {
        _ = strings.Join([]string{hello, world}, ",")
    }
}

join会先根据字符串数组的内容,计算出一个拼接之后的长度,然后申请对应大小的内存,一个一个字符串填入,在已有一个数组的情况下,这种效率会很高,但是本来没有,去构造这个数据的代价也不小。

此方法跟js中的Array.prototype.join方法差不多,都是给数组的每个元素中拼接一个目标字符串,目标字符串为join方法的参数

strings.Join方法比普通的"str"+"str2"这种形式的字符串拼接效率更高,这是因为string本身就是一个常量,那拼接成一个新字符串,就必须要销毁原string对象,然后使当前引用指向新的字符串对象,这样做的开销是非常大的,而strings.Join则不用。

更多golang知识请关注PHP中文网golang教程栏目。

Atas ialah kandungan terperinci golang怎么拼接字符串数组. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:golang怎么定时任务Artikel seterusnya:golang怎么给slice赋长度