Hallo,
ich will eine Hashmap nutzen, um dort Objekte zu Koordinaten zuzuweisen, in aller Kürze:
Jetzt hab ich mir eine Hashmap definiert, die solche Paare speichern soll und schreibe da rein und lese da raus:
Ich bekomme aber nie ein Objeckt zurück, immer nur Null...
Ich hab schon überlegt, ob es daran liegen könnte, dass ich beim Auslesen ein neues Objekt erzeuge, dass zwar dieselben Koordinaten beinhaltet, eben aber nicht identisch ist mit dem Coord-Objekt, das als Key in der Hashmap steht.
Aber in dem Moment, in dem ich das Objekt aus der Hashmap holen will, hab ich zwar Zugriff auf die Koordinaten, nicht aber mehr auf das ursprüngliche Coord-Objekt.
Kann mir da jemand weiterhelfen?
Danke!
ich will eine Hashmap nutzen, um dort Objekte zu Koordinaten zuzuweisen, in aller Kürze:
Code:
class Coord {
private int x,y;
public Coord(int x, int y) {
this.x=x;
this.y=y;
}
}//end class
class myObject extends Coord {
String name;
public myObject(int x, int y, String name) {
super(x,y);
this.name = name;
}
}
Jetzt hab ich mir eine Hashmap definiert, die solche Paare speichern soll und schreibe da rein und lese da raus:
Code:
HashMap<Coord, myObject> hmap = new HashMap<Coord, myObject>;
//reinschreiben
hmap.put(new Coord(5,6), new myObject(5,6,"Horst"));
hmap.put(new Coord(1,2), new myObject(1,2,"Willi"));
hmap.put(new Coord(5,3), new myObject(5,3,"Heinz"));
hmap.put(new Coord(6,6), new myObject(6,6,"Knut"));
//auslesen
new myObject o = hmap.get(new Coord(1,2));
Ich bekomme aber nie ein Objeckt zurück, immer nur Null...
Ich hab schon überlegt, ob es daran liegen könnte, dass ich beim Auslesen ein neues Objekt erzeuge, dass zwar dieselben Koordinaten beinhaltet, eben aber nicht identisch ist mit dem Coord-Objekt, das als Key in der Hashmap steht.
Aber in dem Moment, in dem ich das Objekt aus der Hashmap holen will, hab ich zwar Zugriff auf die Koordinaten, nicht aber mehr auf das ursprüngliche Coord-Objekt.
Kann mir da jemand weiterhelfen?
Danke!