Hi!
Ausgabe: 1
Warum gibt dieser Code 1 aus? Müsste nicht null ausgegeben werden?
Ich dachte mir wenn ich zweimal ein Fileobjekt auf diese Weise erzeuge, habe ich danach 2 Fileobjekte mit gleichem Inhalt, aber verschiedenen Referenzen. Das heißt also dass die HashMap den Inhalt (d.h. die Datenfelder) der Objekte, nicht die Referenz zum Hashen verwendet. Aber woher weiß die HashMap, welchen Inhalt des Objekts sie zum hashen verwenden soll? Und wie kann ich selbst Klassen erstellen, die ich mit einer HashMap in der selben Weise als Keys benutzen kann?
LG, mouk
Java:
HashMap<File, Integer> map = new HashMap<File, Integer>();
map.put(new File("a"), 1);
System.out.println(new File("a"));
Warum gibt dieser Code 1 aus? Müsste nicht null ausgegeben werden?
Ich dachte mir wenn ich zweimal ein Fileobjekt auf diese Weise erzeuge, habe ich danach 2 Fileobjekte mit gleichem Inhalt, aber verschiedenen Referenzen. Das heißt also dass die HashMap den Inhalt (d.h. die Datenfelder) der Objekte, nicht die Referenz zum Hashen verwendet. Aber woher weiß die HashMap, welchen Inhalt des Objekts sie zum hashen verwenden soll? Und wie kann ich selbst Klassen erstellen, die ich mit einer HashMap in der selben Weise als Keys benutzen kann?
LG, mouk