如何使用equals方法比较不同类中的对象数组

时间:2013-02-12 00:54:47

标签: java arrays object equals

public boolean equals(Object obj) {
    boolean result = false;
        if (obj instanceof Recipe) {
           Recipe that = (Recipe) obj;
            if(this.getName().equals(that.getName())){

            for (int cnt = 0; cnt < I.length; cnt++) {
                if (I[cnt].getName().equals(that.getName())) {

                result = (this.getName() == that.getName());
        }
             }
    }
    }
    return result;

}

我可以比较食谱的名称,一旦它们等于我需要逐一比较成分,但我不知道如何进行比较。我知道我需要一个for循环,我添加它来比较所有的成分,但在那之后该怎么做。我真的很感激任何类型的帮助。

2 个答案:

答案 0 :(得分:0)

在Recipe中覆盖equals(),因为它看起来正在尝试,

然后你必须比较食谱的每个字段

但你应该发布食谱领域的来源

答案 1 :(得分:0)

List equals以相同的顺序检查对相等对象的引用,这可能是您需要的。如果是这样,请考虑Arrays.asList,它为您提供了一个引用数组的List视图。