在golang中将数组值设置为结构

结构是


type TopicModels struct {

    Topics []string

}

我想像下面的方法一样将值设置到这个结构中


var topics [2]string

topics[0] = "Sport Nice"

topics[1] = "Nice Sport"

return &TopicModels{Topics: topics}, nil

然而,它告诉我


 cannot use topics (type [2]string) as type []string in field value

如何更改代码以使其正确?


呼如林
浏览 193回答 2
2回答

子衿沉夜

正如错误消息所说,该Topics字段具有类型[]string(任意长度的字符串切片),topics变量具有类型[2]string(长度为 2 的字符串数组)。这些不是相同的类型,所以你会得到错误。有两种方法可以解决这个问题:做topics一个切片:topics = make([]string, 2)topics[0] = "Sport Nice"...使用切片表达式创建一个表示数组的切片:...return &TopicModels{Topics: topics[:]}, nil
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go