Im trying to make a comparison operator that checks if the content of 2 objects are the same, in this instance the Object is called Game and has atributes releaseJaar and naam.
The first call of the method .equals() works just fine but when i try to call it a second time it says it cant resolve the method?
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;
}
}
I dont know what i'm doing wrong here :( Ps: might be multiple things since i just started on the subject of 1 to many relations.
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 +
'}';
}
}
Aucun commentaire:
Enregistrer un commentaire