Ich füge eine ArrayList in map ein (Objekt-ID als Schlüssel und Objekt als Wert).Hashmap, das den ersten Datensatz in den 12. Index einfügt
Die erste Einfügung erfolgt am 12. Index.
Da die Standardgröße 16 für HashMap ist, wird der vierte Datensatz in den ersten Index eingefügt. (Da Index zuletzt erreicht, bedeutet 16).
So bekomme ich falsche Reihenfolge.
Auch ich versuchte mit . Das gleiche Ergebnis kommt.
Und hier ist mein Code:
for (Type object: Objects) {
map.put(object.obj.getId() , object);
}
Bitte helfen Sie mir, dies zu beheben.
Danke.
In welcher Reihenfolge erwarten Sie? HashMap hat keine Bestellung? LinkedHashMap gibt Ihnen einen Anzeigenauftrag. Wenn Sie die bestellten Schlüssel benötigen, verwenden Sie TreeMap. – Eran
@Eran Ich füge 6 Datensätze in eine Map ein. Die Einfügung beginnt mit dem 12. Index. (Ich sah es durch Debugging.) Aber ich möchte es von 1. –
Sie kontrollieren den Index nicht (zumindest nicht direkt). Der Index wird basierend auf dem 'hashCode' bestimmt. Und Sie sollten sich sowieso nicht um den Index kümmern. – Eran