Hallo,
ich möchte gerne folgende Hashmap sortieren
die Hashmap soll jedoh nach dem Key Sortiert werden! Problem dabei ist "noch"
es stehen folgende Keys in der Hashmap
- Furnace1
- Furnace2
- Furnace3
- Furnace4
- Furnace5
- Furnace6
- Furnace7
- Furnace8
- Furnace9
- Furnace10
eine TreeMap sortiert ja von selbst wie ich gelesen habe, aber nach der Sortierfunktion kommt nach 1 erst 10 und dann 2,3,4 etc. .
habe inzwischen in den 5h arbeitstag alle möglichen dinge versucht, doch zu keinem Ergebnis gekommen.
der beste Versuch war bisher folgender:
hat auch Prima geklappt, aber dann hab ich das "entries" Objekt, womit ich so recht nichts anfangen kann, da ich ja an meine Keys und Values dran kommen möchte, habe auch versucht zurück zu wandeln, aber nur ClassCastExceptions bekommen.
wäre über jede noch so kleine Hilfe dankbar!
ich möchte gerne folgende Hashmap sortieren
Code:
HashMap<String, Integer> countedPlacesInFurn = mostFurnPlaces(vFurnPlaces);
die Hashmap soll jedoh nach dem Key Sortiert werden! Problem dabei ist "noch"
es stehen folgende Keys in der Hashmap
- Furnace1
- Furnace2
- Furnace3
- Furnace4
- Furnace5
- Furnace6
- Furnace7
- Furnace8
- Furnace9
- Furnace10
eine TreeMap sortiert ja von selbst wie ich gelesen habe, aber nach der Sortierfunktion kommt nach 1 erst 10 und dann 2,3,4 etc. .
habe inzwischen in den 5h arbeitstag alle möglichen dinge versucht, doch zu keinem Ergebnis gekommen.
der beste Versuch war bisher folgender:
Code:
Object[] entries = countedPlacesInFurn.entrySet().toArray();
public int compare(Object A, Object B){
Map.Entry le = (Map.Entry)A;
Map.Entry re = (Map.Entry)B;
if ((Comparable)le.getKey().toString().length() == (Comparable)re.getKey().toString().length()) {
return ((Comparable)le.getKey()).compareTo((Comparable)re.getKey());
} else if ((Integer)le.getKey().toString().length() < (Integer)re.getKey().toString().length()) {
return -1;
} else {
return +1;
}
}
});
hat auch Prima geklappt, aber dann hab ich das "entries" Objekt, womit ich so recht nichts anfangen kann, da ich ja an meine Keys und Values dran kommen möchte, habe auch versucht zurück zu wandeln, aber nur ClassCastExceptions bekommen.
wäre über jede noch so kleine Hilfe dankbar!