在Java中,排序地图不起作用,是因为Java中的Map接口不是有序的。Map接口中的元素是无序的,因此不能直接对Map进行排序。
如果需要对Map进行排序,可以使用以下方法:
import java.util.*;
public class MapSort {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("A", 3);
map.put("B", 1);
map.put("C", 2);
List<Map.Entry<String, Integer>> list = new ArrayList<>(map.entrySet());
list.sort(Map.Entry.comparingByValue());
for (Map.Entry<String, Integer> entry : list) {
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
}
import java.util.*;
public class MapSort {
public static void main(String[] args) {
Map<String, Integer> map = new TreeMap<>();
map.put("A", 3);
map.put("B", 1);
map.put("C", 2);
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
}
推荐的腾讯云相关产品:
产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云