我有 2 个结构,里面有一个切片,如下所示:type BookX struct { SomeValue string Book1 []Book1}type Book1 struct { Name string Author string}type BookY struct { SomeValue string Book2 []Book2}type Book2 struct { Name string Author string}我想将结构 BookX 中第一个切片中的值传递给 BookY 中的另一个切片。尝试过这种方式但不起作用:func someName(bookX BookX){ var bookY BookY bookY.Book2 = append(bookY.Book2, bookX.Book1...)}
1 回答

叮当猫咪
TA贡献1776条经验 获得超12个赞
Book1即使他们有相同的成员,也是Book2不同的类型。您不能追加[]Book1到[]Book2.
Book2一种解决方案是从创建实例Book1并将它们添加到[]Book2.
func someName(bookX BookX){
var bookY BookY
for _, book1 := range bookx.Book1 {
book2 := Book2 {
Name: book1.Name,
Author: book1.Author,
}
bookY.Book2 = append(bookY.Book2, book2)
}
}
- 1 回答
- 0 关注
- 95 浏览
添加回答
举报
0/150
提交
取消