So erstellen Sie eine iterierbar wrapper für TreeMap und HashMap (Java)?

Habe ich eine Klasse MyMap die wraps TreeMap.
(Sagen, es ist eine Sammlung von Hunden, die Schlüssel sind strings).

public class MyMap {
   private TreeMap<String, Dog> map;
...
}

Ich würde gerne MyMap durchsuchbar mit der for-each-Schleife. Ich weiß, wie ich es getan habe, wenn meine Klasse war ein LinkedList-wrapper:

public class MyList implements Iterable<Dog> {
   private LinkedList<Dog> list;
   ...
   public Iterator<Dog> iterator() {
      return list.iterator();
   }
}

Aber eine solche Lösung nicht funktioniert, TreeMap, weil TreeMap nicht über einen iterator(). Also, wie kann ich MyMap durchsuchbar?

Und die gleiche Frage, außer MyMap wraps HashMap (statt TreeMap).

Dank.

  • Es klingt wie Sie Fragen: "Wie kann ich Werte Durchlaufen einer TreeMap, um von den entsprechenden Schlüssel?" Ist, dass eine präzise Beschreibung?
  • Nein. Die Frage ist, wie man wiederum MyMap in iterierbar, wenn MyMap ist eine Klasse, von meiner Schöpfung, die eine TreeMap Feld. Ich will, dass es iterierbar über die Werte der TreeMap-Feld (in der Reihenfolge, die von den entsprechenden Schlüssel). BTW: Die Frage ist beantwortet.
  • Wenn die Frage beantwortet ist, dann warum ist es nicht markiert, dass Art und Weise?
  • Wenn Sie denken, dass die Frage beantwortet ist, markieren Sie die beste Antwort als 'akzeptiert'.
InformationsquelleAutor snakile | 2010-01-12
Schreibe einen Kommentar