Heim >Java >JavaErste Schritte >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!