我正在编写一个 Java 应用程序来比较 JRules jar 中所做的更改。在这个应用程序中,我将比较原始 jar 和新 jar 的变化。为此,我正在使用 ILOG api。好吧,问题在于我不知道如何将一条规则与另一条规则进行比较,以便知道它是否相同。我想也许我可以比较条件和行动,但我不确定它是如何工作的。这是我的代码:
//Assume the rulesets are correctly initializated
JRule[] rulesOrig = ruleSetOriginal.getAllRules();
JRule[] rulesChanged = ruleSetChanged.getAllRules();
for(int i=0; i<rulesOrig.length;i++){
for(int j=0; j<rulesOrig[i].getConditionCount();j++){
if(rulesOrig[i].getConditionAt(j).equals(rulesChanged[i].getConditionAt(j))){
.....
}
}
}
这种比较,使用 .equals() 方法总是返回 false。我认为它没有实施。有谁知道如何进行这种比较?目的是比较两个 JRules jar 版本之间所做的更改,如果您知道另一种形式,请告诉我。
提前致谢!!