Einige Testfälle schlagen in meiner Anwendung fehl, was von der Einfügereihenfolge der Elemente abhängt. Es wird verwendet in Java 7 gut zu funktionieren, aber das Problem begann, nachdem 8. Java Upgrade Während Internet-Suche ich dies in einem article gefunden:Problem beim Sortieren beständiger Elemente beim Iterieren von HashMap in Java 8
:Java 8 einige mögliche Änderungen an HashSet/Map Iterationsreihenfolge enthält
Können mir einige bitte vorschlagen - wie kann ich die Objekte in einer Map in derselben Reihenfolge wie die Reihenfolge der Insertion in die Map iterieren, in Anbetracht dessen würde ich immer noch Java 1.8 in meiner Entwicklungsumgebung verwenden?
Ja natürlich es wurde nie von HashMap sicher sein, dass die Objekte in der gleichen Reihenfolge abgerufen werden können, aber ja, es verwendet in Java arbeiten 7.
Hat
LinkedHashMap
Arbeit dies zu implementieren?
Was sagt Ihnen die 'LinkedHashMap'-Dokumentation? – RealSkeptic
Haben Sie überprüft, was Java 7 'HashMap' Dokumentation sagt?: Https://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html: ** Diese Klasse übernimmt keine Garantie für die Reihenfolge der Karte; insbesondere garantiert es nicht, dass der Auftrag im Laufe der Zeit konstant bleibt. ** Sie müssen andere Sammlung verwenden, die den Auftrag garantiert - LinkedHashMap – krokodilko
Verwenden Sie eine 'TreeMap' anstelle von der javaDocs: Eine Rot-Schwarz-Baum basierte NavigableMap-Implementierung. Die Map wird nach der natürlichen Reihenfolge ihrer Schlüssel sortiert oder nach einem Comparator, der bei der Erstellung der Map zur Verfügung gestellt wird, abhängig davon, welcher Konstruktor verwendet wird. –