如何将一个切片连接成一个字符串呢?
您最先想到的可能是标准库 strings 包的 Join 函数。...事实上,标准库并没有针对每种类型的切片都给出一个实现,也没有使用反射给出一个通用的实现。既然没有那我们自己来实现一个吧。...2.使用反射实现
如果想要将任意类型的切片连接成字符串,可以使用反射(reflect)包来动态处理不同类型的切片,将元素转换为字符串,并连接成一个字符串。...dereferencing as many times
// as necessary to reach the base type (or nil) or an implementation of fmt.Stringer...Join(str, ", "))
}
运行输出:
foo, bar, baz
1, 2, 3
1.1, 2.2, 3.3
true, false, true
f, o, o
输出符合预期,我们通过反射,只用一个函数便可将任意类型的切片连接成字符串