570 Stimmen

Wie Einfügen Reihenfolge in HashMap zu bewahren?

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?

1233voto

NPE Punkte 462670

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.

77voto

nicholas.hauschild Punkte 41528

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 .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X