【发布时间】:2014-10-01 17:47:37
【问题描述】:
我的基本问题是我目前存储在 4 个不同的列表中的 4 个不同的数据源(DS1、DS2、DS3、DS4)。每个列表都填充有 InformationObjects,这些对象有四个字段,如果它们存在则作为标识符,但它们不一定都存在。然后大约有 20 个字段包含有关对象的随机信息。
然后我需要做的是将这些列表合并到一个新列表中,如果来自不同数据源的两个对象具有相同的任何标识符,则应将它们视为同一对象,并且应合并它们的字段。
例子:
Object1
idField1: "123"
idField3: "437"
infoField1: "info1"
infoField2: "info2"
Object2
idField1: "123"
idField2: "gfd"
idField4: "9987"
infoField3: "info3"
infoField4: "info4"
Object3
idField2: "gfd"
infoField5: "info5"
Merged
idField1: "123"
idField2: "gfd"
idField3: "437"
idField4: "9987"
infoField1: "info1"
infoField2: "info2"
infoField3: "info3"
infoField4: "info4"
infoField5: "info5"
这个合并会做很多,所以我需要找到最快的方法来完成它。所以我的问题是如何以最有效的方式做到这一点?
【问题讨论】:
-
你想要javascript还是java?
-
保留顺序很重要,还是只需要将它们组合在一起而不需要任何重复?
-
@Kayaman 在java中,我只是使用json来更容易地呈现对象:)。
-
@CBHacking 顺序不重要,重要的是我可以组合任何标识符相同的对象。
-
所以你的对象是字符串,字符串对?在这里使用 JSON 并没有让它更清晰。