我有一个比较两个对象的方法,但我不知道如何通过 Jackson 库比较 JsonNode。
我想要这样的东西:
private boolean test(JsonNode source) {
JsonNode test = compiler.process(file);
return test.equals(source);
}
这足以使用JsonNode.equals:
节点对象的相等定义为完全(深度)值相等。这意味着可以通过比较根节点的相等性来比较完整的 JSON 树的相等性。
也许还添加一个空检查作为test != null
您当前的代码看起来不错,JsonNode
该类提供JsonNode.equals(Object)
了检查方法:
节点对象的相等定义为完全(深度)值相等。
从 2.6 版开始,还有一个使用自定义比较器的重载版本:
public boolean equals(Comparator<JsonNode> comparator, JsonNode other){
return comparator.compare(this, other) == 0;
}