Concatenation
src/hello/utils.go
package utils
import (
"strings"
)
var names []string
func init() {
for i := 'a'; i < 'z'; i++ {
names = append(names, string(i)) // i is rune not compatible with names []string
}
}
func Concatenate() string {
var s, sep string
for i := 0; i < len(names); i++ {
s += sep + names[i]
sep = " "
}
return s
}
func ConcatenateString() string {
return strings.Join(names, " ")
}
src/hello/utils_test.go
package utils
import "testing"
func BenchmarkConcatenate(b *testing.B) {
for i := 0; i < b.N; i++ {
Concatenate()
}
}
func BenchmarkConcatenateString(b *testing.B) {
for i := 0; i < b.N; i++ {
ConcatenateString()
}
}