首页 > 解决方案 > 无法连接切片

问题描述

我有以下代码,它返回 4 个切片,我想做一个。

 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)

我没有发布整个代码,因为我猜它不需要,返回的切片是这些:

[31.8k]、[3151]、[50.5k]、[8111],但我想得到 [31.8k 3151 50.5k 8111]。p 变量是一个字符串,所以我收到以下错误:

不能在追加中使用 p(类型字符串)作为类型 [] 字符串

我尝试了一些事情但没有成功,希望有人能指出我做错了什么。提前致谢!

标签: go

解决方案


显然,您在循环中添加的方式不会产生您想要的列表。

postArray = append(postArray, p...)  // you are appending a vector here which you don't want in your case

而是使用这个,

postArray = append(postArray, p)

推荐阅读