Normal
[code=Java]public int hashCode(){ int result=0; result=x+laenge/2+1000*(y+breite/2)+1000000*z; return result;} public boolean equals(Object vergleich){ if(vergleich.hashCode()!=hashCode()){ return false; } if(vergleich.getClass()==this.getClass()){ return true; } return false;}[/code]Meiner Meinung nach ja - aber selbst wenn nicht: Dann würde put() doch ersetzen, oder?Aber: Es stimmt, als ich HashCode() geschrieben habe bin ich noch von Werten für x/y/z+laenge/breite<1000 ausgegangen, das stimmt hier nicht mehr...Von Hand nachgerechnet: Die HashCodes sind unterschiedlich.
[code=Java]
public int hashCode(){
int result=0;
result=x+laenge/2+1000*(y+breite/2)+1000000*z;
return result;
}
public boolean equals(Object vergleich){
if(vergleich.hashCode()!=hashCode()){
return false;
if(vergleich.getClass()==this.getClass()){
return true;
[/code]
Meiner Meinung nach ja - aber selbst wenn nicht: Dann würde put() doch ersetzen, oder?
Aber: Es stimmt, als ich HashCode() geschrieben habe bin ich noch von Werten für x/y/z+laenge/breite<1000 ausgegangen, das stimmt hier nicht mehr...
Von Hand nachgerechnet: Die HashCodes sind unterschiedlich.