【Java】 Java中Map的值排序:简单易懂的指南
import java.util.*;
public class SortMapValues {
public static void main(String[] args) {
// 创建一个Map对象
Map<String, Integer> map = new HashMap<>();
map.put("apple", 10);
map.put("orange", 20);
map.put("banana", 5);
map.put("pear", 15);
// 使用List来存储Map的键
List<String> keys = new ArrayList<>(map.keySet());
// 使用Collections.sort对键进行排序
Collections.sort(keys, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
// 按照Map的值进行降序排序
return map.get(o2) - map.get(o1);
}
});
// 输出排序后的键值对
for (String key : keys) {
System.out.println(key + " : " + map.get(key));
}
}
}
这段代码首先创建了一个HashMap,然后使用Collections.sort方法和一个匿名的Comparator来对Map的键进行排序。排序的依据是Map的值,这里以值的降序排序为例。最后,通过遍历排序后的键列表,输出相应的键值对。
评论已关闭