javamap排序,java对map的list进行排序

发布时间:2023-01-03

本文目录一览:

  1. 如何对Map进行字典排序Java
  2. java map 先后顺序
  3. Java中 map集合能排序吗?
  4. java map 怎么按按key排序

如何对Map进行字典排序Java

//根据 Map的key进行字典排序

Map<String, String> parameterMap = new HashMap<String, String>();
List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(parameterMap.entrySet());
Collections.sort(list,new Comparator<Map.Entry<String,String>>() {
    //升序排序
    public int compare(Entry<String, String> o1, Entry<String, String> o2) {
        return o1.getKey().compareTo(o2.getKey());
    }
});

java map 先后顺序

通过map中的LinkedHashMap实现就可以。

HashMap<String,String> headers = new LinkedHashMap<String,String>();//创建一个map
headers.put("Cache-Control", "no-cache");//给map赋第一个值
headers.put("Connection", "close");//给map赋第二个值
Set keys1 = headers.keySet();//获取所有的key值
System.out.println(keys1);

结果:[Cache-Control,Connection];//结果就是先进先出 备注:以上HashMap就是先定义了存放的key和value值都是字符串类型,之后可以通过get方法获取到对应的值(如:headers.get("Cache-Control"),结果就是"no-cache");

Java中 map集合能排序吗?

可以的,Java中的map ,list ,set 三个之间都是可以相互的转换的! 举个例子:map 转换成List 后就可以排序了~

public class test {
    public static void main(String[] args) {
        Map<String,String> maps = new HashMap<String,String>();
        maps.put("1", "one");
        maps.put("2", "two");
        maps.put("3", "three");
        List list = mapTransitionList(maps);
        for(int i=0; i<list.size(); i++) {
            System.out.println(list.get(i));
        }
    }
    private static List mapTransitionList(Map<String, String> maps) {
        List list = new ArrayList();
        Iterator iter = maps.entrySet().iterator(); //获得map的Iterator
        while(iter.hasNext()) {

java map 怎么按按key排序

java中map按照double大小进行排序,可以使用collentions接口的sort方法进行比较,实例如下:

Collections.sort(dataMap, new Comparator<Map<String, Object>>() {
    @Override
    public int compare(Map<String, Object> lhs, Map<String, Object> rhs) {
        Double d5 = ((Double) rhs.get(OpenPrice));
        Double d6 = (Double) lhs.get(OpenPrice);
        if (d5 != null && d6 != null) {
            return d5.compareTo(d6);
        } else {
            return flag;
        }
        // return d1.compareTo(d2);
    }
});

根据返回的int类型,可设置按照从大到小还是从小到大排序