import java.util.*;
public class MapSortByKeyExample {
public static void main(String[] args) {
// 创建一个HashMap并添加一些键值对
Map<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 2);
map.put("orange", 1);
map.put("grape", 4);
// 将Map的entrySet转换为List,以便可以排序
List<Map.Entry<String, Integer>> list = new ArrayList<>(map.entrySet());
// 使用Collections.sort()方法按照key进行排序
Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
@Override
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
return o1.getKey().compareTo(o2.getKey());
}
});
// 将排序后的结果放入一个新的LinkedHashMap中以保持顺序
Map<String, Integer> sortedMap = new LinkedHashMap<>();
for (Map.Entry<String, Integer> entry : list) {
sortedMap.put(entry.getKey(), entry.getValue());
}
// 打印排序后的Map
for (Map.Entry<String, Integer> entry : sortedMap.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
HashMap并添加了一些键值对。Map的entrySet转换为一个List。这是因为Map本身是无序的,而List可以排序。Collections.sort()方法,并通过自定义的Comparator来比较键的字典顺序(即字母顺序)。List重新放入一个新的LinkedHashMap中,以保持插入顺序。Map。这样,你就可以得到一个按照键排序的Map了。
上一篇:java 获取当前时间的时间戳
下一篇:java的map
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站