2

我需要帮助创建一个 equals 方法。

方法是: boolean equals(Zombie other)
描述具体说: “接受另一个 Zombie 对象作为参数,如果僵尸与另一个 Zombie 具有相同的名称和相同的感染程度、武器和大脑,则返回 true。 "

我不明白如何将 Zombie 其他部分分开以与实例变量进行比较,然后我将如何比较所有部分。

4

1 回答 1

3

在您的情况下,这将是 equals() 的正确实现。

    @Override
    public boolean equals(Object obj) {

        if (obj instanceof Zombie){

            Zombie zombiObj= (Zombie) obj;

            if(zombiObj.getName().equals(this.getName()) &&
                zombiObj.getInfection().equals(this.getInfection())&&
                zombiObj.getWeapon().equals(this.getWeapon()) &&
                zombiObj.getBrain()== this.getBrain() ) {

                return  true;
            }else{
                return false;

            }
        } else{

            return false;
        } 
    }
于 2013-11-11T06:55:13.093 回答