Java JSON值扩展了另一个JSON值
我的Json结构如下Java JSON值扩展了另一个JSON值,java,json,Java,Json,我的Json结构如下 main = { "hideIds1":["id1","id2","id3","id4"], "hideIds2":["id11","id12","id13","id14"], "maindHides1":["hideIds1","id7","id9"] "maindHides2":["hideIds1","hideIds2","id14","id18"] } 看起来“mainHides1”扩展了“
main = {
"hideIds1":["id1","id2","id3","id4"],
"hideIds2":["id11","id12","id13","id14"],
"maindHides1":["hideIds1","id7","id9"]
"maindHides2":["hideIds1","hideIds2","id14","id18"]
}
看起来“mainHides1”扩展了“hideis1”的所有值。当我迭代“mainHides1”时,我必须检查键是否在主JsonObject中有值。在这个迭代中,第一个值变为true,但对于其他ID它不需要
我在这里期望的是,当我访问“maindHides1”值时,它会变成[“id1”、“id2”、“id3”、“id4”、“id7”、“id9”]。json会像extends那样自动执行吗?还是我必须在程序中手动执行
JSON是纯类型构造,它不是类、库或框架。
您需要手动进行此扩展。您可以使用
GSON
库并将JSON
转换为java对象。一旦您有了java对象,您就可以执行所需的任务。对于手动选项,您可以使用JSON中的键创建自己的哈希集,您可以做的是,在添加值时,您可以交叉检查它们是否等于任何当前键值。如果是,那么您可以在内部循环中将其值添加到值集。在JSON本身中,这是不可能的,但我建议使用类似的方法,并根据需要创建您的模型,如下所示:
interface IMainModel {
IDs: array;
}
var donut: IHides1Model = {
main: IMainModel,
IDs: array
};