假设我有以下结构:
type A struct {
Field1 string
Field2 string
}
type B struct {
Field3 string
Field4 int
}
还有一个使用前两个的结构:
type C struct {
A
MyList []B
}
现在,我有一些数据要分组并映射到一个C结构中并返回一个切片C:
var results []C
我有一个结构片段,看起来像(因为如果可能发生我们重复 A 的片段):
type X struct {
A
B
}
所以我想按 A 对结果进行分组。为此,我将遍历我的方法作为参数接收的 X 切片:
var results []C
// Y is an slice of Xs
for _, elem := range Y {
// If elem.A exists then append elem.B into C.A
// If not then add elem.A and elem.B into C
}
如何实现上述评论中所述的东西?我的意思是,我如何检查结构A切片中是否已经存在结构C?
肥皂起泡泡
相关分类