Heim >Java >JavaErste Schritte >Kann Java die Schlüssel einer Karte sortieren?

Kann Java die Schlüssel einer Karte sortieren?

(*-*)浩
(*-*)浩Original
2019-11-19 11:52:552167Durchsuche

Kann Java die Schlüssel einer Karte sortieren?

Map ist eine Sammlungsschnittstelle von Schlüssel-Wert-Paaren. Zu den Implementierungsklassen gehören hauptsächlich: HashMap, TreeMap, Hashtable und LinkedHashMap usw. (Empfohlenes Lernen: Java-Kurs)

TreeMap: NavigableMap-Implementierung basierend auf dem Rot-Schwarz-Baum (Rot-Schwarz-Baum), die Karte wird nach der natürlichen Reihenfolge ihrer Schlüssel sortiert, oder Basierend auf der Erstellung einer Karte wird der bereitgestellte Comparator je nach verwendetem Konstruktor sortiert.

Map.Entry gibt die Sammlungsansicht zurück.

Schlüsselsortierung

TreeMap ist standardmäßig in aufsteigender Reihenfolge. Wenn wir die Sortiermethode ändern müssen, müssen wir einen Komparator verwenden: Komparator. Comparator ist eine Komparatorschnittstelle, die Sammlungsobjekte oder Arrays sortieren kann. Durch die Implementierung der öffentlichen Vergleichsmethode (T o1, To2) dieser Schnittstelle kann eine Sortierung wie folgt erreicht werden:

import java.util.Comparator;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
public class TreeMapTest {
    public static void main(String[] args) {
        Map<String, String> map = new TreeMap<String, String>(
                new Comparator<String>() {
                    public int compare(String obj1, String obj2) {
                        // 降序排序
                        return obj2.compareTo(obj1);
                    }
                });
        map.put("b", "ccccc");
        map.put("d", "aaaaa");
        map.put("c", "bbbbb");
        map.put("a", "ddddd");
        
        Set<String> keySet = map.keySet();
        Iterator<String> iter = keySet.iterator();
        while (iter.hasNext()) {
            String key = iter.next();
            System.out.println(key + ":" + map.get(key));
        }
    }
}

Die laufenden Ergebnisse sind wie folgt :

d:aaaaa
c:bbbbb
b:ccccc
a:ddddd

Das obige ist der detaillierte Inhalt vonKann Java die Schlüssel einer Karte sortieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was bedeutet Java?Nächster Artikel:Was bedeutet Java?