不能在我的 if else 语句中第二次使用 .equals

问题描述

我正在尝试创建一个比较运算符来检查 2 个对象的内容是否相同,在这种情况下,对象称为 Game 并且具有属性 releaseJaar 和 naam。

方法 .equals() 的第一次调用工作正常,但是当我尝试第二次调用它时,它说它无法解析该方法

public boolean equals(Object andereObject){
    if (andereObject instanceof Game) {
        if (((Game) andereObject).getNaam().equals(naam) && ((Game) andereObject).getReleaseJaar().equals(releaseJaar)){
            return true;
        }
    }
    else {
        return false;
    }
}

我不知道我在这里做错了什么:( Ps:可能是多方面的,因为我刚开始讨论 1 对多关系的主题

public class Game {
private String naam;
private int releaseJaar;
private double nieuwprijs;
private int ditJaar = LocalDate.Now().getYear();

public Game(String nm,int rJ,double nwpr){
   this.naam = nm;
   this.releaseJaar = rJ;
   this.nieuwprijs = nwpr;

}

public String getNaam(){
    return naam;
}

public double getReleaseJaar(){
    return releaseJaar;
}

//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
public double huidigeWaarde(){
    int jaarVerschil = ditJaar - releaseJaar;
    double nieuweWaarde = nieuwprijs;
    for (int i = 0; i < jaarVerschil; i++){
        nieuweWaarde = nieuweWaarde * 0.7;
    }
    return nieuweWaarde;
}

//De werkende functie moet nog gemaakt worden

public boolean equals(Object andereObject){
    if (andereObject instanceof Game) {
        if (((Game) andereObject).getNaam().equals(naam) && ((Game) andereObject).getReleaseJaar().equals()){
            return true;
        }
    }
    else {
        return false;
    }
}

@Override
public String toString() {
    return "Game{" +
            "naam='" + naam + '\'' +
            ",releaseJaar=" + releaseJaar +
            ",nieuwprijs=" + nieuwprijs +
            '}';
}

}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...