我有以下代码,该代码返回4个 slice ,我想将其设为一个。
var postArray []string
if strings.Contains(s.Text(), "k") || greaterThan(voteValue) {
postArray = append(postArray, s.Text())
}
for _, p := range postArray {
postArray = append(postArray, p...)
fmt.Println(reflect.TypeOf(p))
}
fmt.Println(postArray)
我没有发布整个代码,因为我猜不需要它,返回的 slice 是这些 slice :
[31.8k],[3151],[50.5k],[8111],但我想获得[31.8k 3151 50.5k 8111]。 p变量是一个字符串,因此出现以下错误:
不能在附件中使用p(字符串类型)作为[] string类型
我已经尝试了一些方法,但没有成功,希望有人可以指出我做错了什么。提前致谢!
最佳答案
显然,您添加到循环中的方式不会导致您想要的列表。
postArray = append(postArray, p...) // you are appending a vector here which you don't want in your case
改用这个
postArray = append(postArray, p)
关于go - 无法合并 slice ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60695983/