Ich benutze eine HashMap
. Wenn ich über die Karte iteriere, werden die Daten in (oft der gleichen) zufälligen Reihenfolge zurückgegeben. Die Daten wurden jedoch in einer bestimmten Reihenfolge eingefügt, und ich muss die Einfügereihenfolge beibehalten. Wie kann ich das tun?
Antworten
Zu viele Anzeigen?LinkedHashMap
ist genau das, wonach Sie suchen.
Es ist genau wie HashMap
mit dem Unterschied, dass die Elemente in der Einfügereihenfolge angezeigt werden, wenn Sie darüber iterieren.
HashMap
ist laut der zweiten Zeile der Dokumentation ungeordnet:
Diese Klasse gibt keine Garantie für die Reihenfolge der Karte; insbesondere garantiert sie nicht, dass die Reihenfolge im Laufe der Zeit konstant bleibt.
Vielleicht können Sie tun, was aix vorschlägt, und eine LinkedHashMap
oder eine andere geordnete Sammlung. Werfen Sie einen Blick auf den Leitfaden von javapractices.com über Die Auswahl der richtigen Kollektion .