Sortieren einer HashMap in Java: Wertbasierte Techniken
In Java sind HashMaps wertvolle Sammlungen zum Speichern von Schlüssel-Wert-Paaren, aber sie keine bestimmte Sortierreihenfolge einhalten. Um eine HashMap nach Werten zu sortieren, müssen wir zusätzliche Techniken anwenden.
Ansätze für wertbasierte Sortierung
Ein Ansatz besteht darin, die HashMap in eine Liste von zu konvertieren Werte mithilfe der Methode „values()“ eingeben. Anschließend können wir die Liste mithilfe eines Komparators sortieren, der die gewünschte Sortierlogik definiert.
Map<String, Person> people = new HashMap<>(); Person jim = new Person("Jim", 25); Person scott = new Person("Scott", 28); Person anna = new Person("Anna", 23); people.put(jim.getName(), jim); people.put(scott.getName(), scott); people.put(anna.getName(), anna); List<Person> peopleByAge = new ArrayList<>(people.values()); Collections.sort(peopleByAge, Comparator.comparing(Person::getAge));
Nach dem Sortieren der Liste können wir auf die sortierten Elemente zugreifen.
Ein weiterer Ansatz, der für häufigen Zugriff geeignet ist besteht darin, eine HashMap-Zuordnung zu einer sortierten Menge zu erstellen. Beispielsweise könnten wir ein HashMap
Überlegung für TreeMap
Wenn die Sortierung nach Schlüssel bevorzugt wird, ist es eine Überlegung wert, stattdessen eine TreeMap zu verwenden. TreeMaps behält automatisch eine natürliche Sortierreihenfolge basierend auf den Schlüsseln bei.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Java HashMap nach ihren Werten sortieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!