我有一个请求和响应json对象,如下所示
{
"request":{
"name":"Ryan",
"title":"TEMP",
"workGroups":[
{
"home":[
{
"groupName":"Group 1",
"groupValue":"5"
},
{
"groupName":"Group 3",
"groupValue":"6"
}
]
}
]
},
"response":{
"name":"Ryan",
"title":"TEMP",
"workGroups":[
{
"home":[
{
"groupName":"Group 3",
"groupValue":"6"
},
{
"groupName":"Group 1",
"groupValue":"5"
}
]
}
]
}
}
我试图将请求中“workgroups”中“home”字段中的嵌套值与响应中的相同字段进行比较,然后处理验证之后,考虑到home字段中的值在请求和响应之间的顺序可能不同,如何比较其中的值,有没有办法用最小的循环来实现呢?
1条答案
按热度按时间ecfsfe2w1#
假设两个对象都已反序列化,则可以轻松展平包含最内部对象的两个列表
home
像这样的物体:这样,您将得到两个不同的列表,其中一个包含
home
的条目request
对象和包含home
的条目response
对象。有了它,您就可以忽略顺序比较这两个列表,或者手动比较,或者使用
CollectionUtils#isEqualCollection
.