gpt4 book ai didi

java - 我如何在java中比较两个JSONArray?

转载 作者:行者123 更新时间:2023-12-02 02:57:03 39 4
gpt4 key购买 nike

如何比较两个 JSONArray,如果这两个数组中有任何值匹配,则该函数必须返回 true。例如:

array1=={1,2,3,4,5,6} 
array2=={9,10,11,1,12}

比较这两个数组时,结果为true,因为两个数组之间至少有一个共同元素。数组中的位置并不重要。

我试图通过一种原始的方式来比较它(循环遍历每个数组并比较值)。

private boolean compareArrays(JSONArray deviation, JSONArray deviationIds) throws JSONException {
for (int i = 0; i < deviation.length(); i++) {
for (int j = 0; j < deviationIds.length(); j++)
if(deviation.getString(i).equals(deviationIds.getString(j)))
return true;
}
return false;
}

这段代码有效,但我想知道是否有办法可以更专业地做到这一点。也许,可以通过使用 JAVA Stream API 来实现这一点。如果您需要任何其他信息,请发表评论。谢谢!!

最佳答案

您可以使用 XStream 来处理 JSON 映射

http://x-stream.github.io/json-tutorial.html

或者根据您检索字符串的逻辑,您可以比较为

 JSONCompareResult result = JSONCompare.compareJSON(json1, json2, JSONCompareMode.STRICT);
System.out.println(result.toString());

关于java - 我如何在java中比较两个JSONArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57069595/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com