[JAVA] Extrahiert den Wert von HashMap und gibt das nach dem Wert von value sortierte Ergebnis als Liste zurück.

Hier ist eine Zusammenfassung, wie Map (HashMap) mit Wert in Java sortiert wird. Hier betrachten wir eine Situation, in der Sie die Werte von A_array gleichzeitig mit B_array sortieren möchten. Da die Liste nach dem Eintragstyp HashMap sortiert wird, kann sie mit anderen Maps wie TreeMap verwendet werden.

Code

Solution.java


import java.util.*;

class Solution {
    public static void main(String[] args) {
        int[] A_array = {1,6,3,10,5};
        int[] B_array = {8,21,13,4,5};
        tryComperator(A_array, B_array);
    }
    public static void tryComperator(int[] a, int[] b){
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        //Speichern Sie die Elemente des Arrays in einer Hashmap.
        for (int i = 0; i < a.length; i++){
            map.put(a[i], b[i]);
        }
        //Speichern Sie jedes Element von Hashmap in einer Liste.
        List<Map.Entry> mapValuesList = new ArrayList<Map.Entry>(map.entrySet());
        //Versuchen Sie, mapValuesList auszugeben.(10=Es scheint, dass es in Form von 4 ausgegeben wird.)
        for (Map.Entry v: mapValuesList){
            System.out.println("map>> "+v+",key>> "+v.getKey()+"value>> "+v.getValue());
        }
        //Instanziieren Sie die Comparator-Klasse
        Comparator<Map.Entry> comparator = new Comparator<Map.Entry>() {
            public int compare(Map.Entry entry1, Map.Entry entry2) {
                return ((Integer) entry1.getValue()).compareTo((Integer) entry2.getValue());
            }
        };
        //Mit Komparator sortieren.
        Collections.sort(mapValuesList, comparator);
        //Ausgabe zur Bestätigung
        for (Map.Entry s : mapValuesList) {
            System.out.println(s);
        }
    }
}
Ausgabe
map>> 1=8,key>> 1value>> 8
map>> 3=13,key>> 3value>> 13
map>> 5=5,key>> 5value>> 5
map>> 6=21,key>> 6value>> 21
map>> 10=4,key>> 10value>> 4
10=4
5=5
1=8
3=13
6=21

Es wurde in aufsteigender Reihenfolge des Wertes ausgegeben.

Referenz: http://kevin3sei.blog95.fc2.com/blog-entry-159.html

Recommended Posts

Extrahiert den Wert von HashMap und gibt das nach dem Wert von value sortierte Ergebnis als Liste zurück.
Übergeben Sie ein Argument an die Methode und erhalten Sie das Ergebnis der Operation als Rückgabewert
Zeigen Sie den Durchschnittswert der Bewertung als Stern an
Der Wert wird aus dem Doppel-Hash herausgenommen und vom Getter ausgegeben.
Beispielprogramm, das den Hashwert einer Datei in Java zurückgibt
Rufen Sie den in der Controller-Klasse von Spring Boot definierten Pfad als Liste ab
Erstellen Sie einen benutzerdefinierten Formatierer für Yellowfin und zeigen Sie das Minus des numerischen Werts mit △ (Dreieck) an.
Ich möchte die MD5-Prüfsumme einer Datei in Java finden und das Ergebnis als Zeichenfolge in hexadezimaler Notation erhalten.
[Java] Schneiden Sie einen Teil der Zeichenfolge mit Matcher und regulären Ausdrücken aus
Einfache statistische Analyse des Geldbetrags aus der von der Mercari Java-Entwicklung durchsuchten Liste
Eine Überprüfung des von Rails-Anfängern verwendeten Codes
ArrayList und die Rolle der Schnittstelle aus List
Extrahieren Sie ein bestimmtes Element aus der Liste der Objekte
Ich möchte eine Liste des Inhalts einer Zip-Datei und ihrer unkomprimierten Größe erhalten
Verzweigungsverarbeitung mit dem Rückgabewert von RestTemplate und dem Statuscode von ResponseEntity in Spring Boot
Eine Anwendung, die den Wert des Beschleunigungssensors durch UDP-Kommunikation zwischen C # und Android erfasst