Wir können die Art von HashMap implementieren, indem wir auf TreeMaps Wert sort verweisen. Ich habe versucht, ein Beispiel zu schreiben, um es mit Ihnen zu teilen.
public class HashMapTest {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("c", "ccccc");
map.put("a", "aaaaa");
map.put("b", "bbbbb");
map.put("d", "ddddd");
List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());
Collections.sort(list,new Comparator<Map.Entry<String,String>>() {
//Ascending order
public int compare(Entry<String, String> o1,
Entry<String, String> o2) {
return o1.getValue().compareTo(o2.getValue());
}
});
for(Map.Entry<String,String> mapping:list){
System.out.println(mapping.getKey()+":"+mapping.getValue());
}
}
die resule ist
a: aaaaa
b: bbbbb
c: CCCCC
d: ddddd
Eine HashMap unterstützt keine Sortierung, daher können Sie die Einträge in der hashmap nicht selbst sortieren. – Korashen
Sie können eine HashMap nicht sortieren, aber es sind sortierte Maps. Siehe https://stackoverflow.com/questions/2889777/difference-between-hashmap-linkedhashmap-and-treemap – Alexander
Was hast du bisher versucht? –