Hej Board,
zunächst etwas code
Diese Funktion soll mir die Values aus HashMaps in TreeSets füllen und verwertbar bleiben, da ich sie öfter brauche.
Das Problem liegt in Zeile 6. Einmal rufe ich die Methode z.B. mit HashMaps deren Values vom Typ String und einmal vom Typ int sind auf, möchte aber das die TreeSets direkt die richtigen Typen aufnehmen und eben nicht vom Typ HashMap$Value gefüllt werden.
Beim Methodenaufruf kenne ich den Typ der Values. Wie kann ich nun das Casting variabel halten?
BTW: Kann ich das extrahieren von Values aus HashMaps in neue Collections auch schlanker gestalten als den Weg über einen Iterator zu gehen? Also ähnlich wie zumBeispiel getKeys() direkt ein Set zurückgibt?
Habt schonmal besten Dank.
Biesterfeld.
zunächst etwas code
Code:
private TreeSet getFinalTreeSet(HashMap hm){
TreeSet ts = new TreeSet();
Iterator it = hm.values().iterator();
while(it.hasNext())
ts.add((FooBar)it.next());
return ts;
}
Diese Funktion soll mir die Values aus HashMaps in TreeSets füllen und verwertbar bleiben, da ich sie öfter brauche.
Das Problem liegt in Zeile 6. Einmal rufe ich die Methode z.B. mit HashMaps deren Values vom Typ String und einmal vom Typ int sind auf, möchte aber das die TreeSets direkt die richtigen Typen aufnehmen und eben nicht vom Typ HashMap$Value gefüllt werden.
Beim Methodenaufruf kenne ich den Typ der Values. Wie kann ich nun das Casting variabel halten?
BTW: Kann ich das extrahieren von Values aus HashMaps in neue Collections auch schlanker gestalten als den Weg über einen Iterator zu gehen? Also ähnlich wie zumBeispiel getKeys() direkt ein Set zurückgibt?
Habt schonmal besten Dank.
Biesterfeld.