So sortieren Sie eine HashMap nach Schlüssel und Wert in Java 8 – Vollständiges Tutorial

Veröffentlicht: 2020-09-18
So sortieren Sie eine HashMap nach Schlüssel und Wert in Java 8 - Vollständiges Tutorial

In Java 8 – Wie sortiere ich eine Karte?

Auf Crunchify haben wir fast 400 Java-Tutorials geschrieben und dieses ist eine Ergänzung zur Java8-Kategorie.

Ich liebe die Java-Sammlung und habe mehrere Tutorials zum Durchlaufen von Map and List, LinkedList, JSONArray und vielem mehr.

In diesem Tutorial gehen wir auf die beste Methode zum Sortieren von HashMap nach Schlüssel und Wert in Java8 ein.

Lass uns anfangen:

  1. Wir werden die Klasse CrunchifySortMapByKeyValueJava8.java erstellen
  2. Erstellen Sie HashMap<String, Integer> crunchifyMap und das werden wir zum Sortieren nach Schlüssel und Wert verwenden.
  3. For KEY : Wir werden zufällige Unternehmen aus der Liste hinzufügen
    • Muster: Zufallszahl zwischen 1 bis 10 + (-) + 1 Unternehmen aus der Liste
    • Firmenliste: crunchify.com, google.com, twitter.com
  4. For VALUE : Wir fügen eine Zufallszahl zwischen 1 und 50 hinzu
  5. Wir drucken die Originalkarte, sortiert nach Schlüsselkarte und sortiert nach Wertkarte

Karte.Eintrag. matchingByKey comparingByKey() gibt einen Komparator zurück, der Map.Entry in natürlicher Reihenfolge auf Schlüssel vergleicht.

Karte.Eintrag. matchingByValue comparingByValue() gibt einen Komparator zurück, der Map.Entry in natürlicher Reihenfolge nach Wert vergleicht.

Hier ist ein vollständiger Java-Code:

Bitte werfen Sie einen Blick auf zwei Fragen, die im folgenden Code erwähnt werden. Dies sind einfache Dienstprogramme, nur für den Fall, dass Sie sie in Ihrem Projekt verwenden möchten.

  • Wie bekomme ich einen Zufallswert von ArrayList?
  • Wie iteriere ich durch HashMap in Java 8?

CrunchifySortMapByKeyValueJava8.java

Ausgabe der Eclipse-Konsole:

Führen Sie einfach das obige Programm als Java-Anwendung aus und Sie sollten das Ergebnis wie unten sehen.

Lassen Sie uns wissen, wenn Sie auf ein Problem stoßen, das das obige Programm ausführt.