arrays - 在 Golang 中添加 2 个数组类型
问题描述
我有一个type
被调用EmployeeList
的,它只是一个Employee
结构数组。
如果我必须添加/组合EmployeeList
对象,我想我可以按如下方式添加它们
package main
import (
"fmt"
)
type Employee struct {
Id int `json:"id"`
Name string `json:"name"`
}
type EmployeeList []Employee
func main() {
listA := EmployeeList{
Employee{Id: 1, Name: "foo"},
Employee{Id: 2, Name: "bar"},
}
listB := EmployeeList{
Employee{Id: 3, Name: "baz"},
}
// Print the combined lists
fmt.Println(append(listA, listB))
}
但是append
抛出一个错误:
./prog.go:24:21: cannot use listB (type EmployeeList) as type Employee in append
我知道它与不匹配/意外的类型有关,但我不确定如何将这两个列表添加在一起?
谢谢!
解决方案
您不能将 an 附加EmployeeList
到Employee
. 但是因为EmployeeList
被定义为 的列表Employee
,所以您可以解压该数组并将其元素附加到listA
. 您可以使用...
.
append(listA, listB...)
推荐阅读
- xamarin - MvvmCross 创建自定义绑定到 LinearLayout
- html - 如何在html表中设置相同的列?
- reactjs - MapStateToProps 依赖于组件的 props
- oracle - 如何在 ORACLE SQL 中按周期计算累计第 90 个百分位数
- fortran - Fortran 错误:spread() 中的排名不匹配
- c - 将 txt 文件中的句子解析为 C 中的多维数组
- android - 如何在输入特殊单词时更改文本颜色
- java - 每次更改 Java 编码都需要重新启动 Tomcat
- firebase - Firebase 数据库规则,区分创建和更新
- java - 如何删除java中模式的所有数据库对象?