在Java中,对List<Map<String, Object>>进行排序通常需要指定一个排序依据,即Map中某个key对应的value将作为排序的标准。下面我将分步说明如何实现这一排序,并附上相应的代码片段。 1. 确定排序依据 首先,需要明确Map中哪个key对应的value将作为排序的标准。例如,假设我们有一个List<Map<Stri...
Map<String,Object> map2 =newHashMap(); map.put("key","1"); map.put("value","a"); map2.put("key","2"); map2.put("value","a"); list1.add(map2); list1.add(map); list1.forEach(System.out::println);//打印数据List<Map<String, Object>> list2 =list1.stream().collect(...
importjava.util.Collections;importjava.util.List;importjava.util.Map;publicclassRankingExample{publicstaticvoidmain(String[]args){List<Map<String,Object>>dataList=getDataList();// 假设已有数据集合Collections.sort(dataList,newScoreComparator());// 根据score字段排序intrank=1;for(inti=0;i<dataList....
其实按照博主的方法建立实体类来使用Java 8 stream()新特性进行排序的方式应该是最合适的方式。无奈项目里由于受同事的影响,基本都不建立实体类,所有现在用起来必须用List<Map<String,Object>>来接受查询结果,导致使用stream()方法有点麻烦。感觉建实体类来使用Java 8 新特性会更方便一些。最初的排序要求只需要...
map2.put("name", "h"); map2.put("cj", "12"); Map<String, Object> map3 =newHashMap<String, Object>(); map3.put("name", "f"); map3.put("cj", "31"); list.add(map1); list.add(map3); list.add(map2);//排序前for(Map<String, Object>map : list) { ...
主要代码如下!也比较简单,对2个map根据特定的字段进行排序。 进行降序: staticclassMapComparatorDescimplementsComparator<Map<String,Object>>{@Overridepublicintcompare(Map<String,Object>m1,Map<String,Object>m2){Double v1=Double.valueOf(m1.get("avgScore").toString());Double v2=Double.valueOf(m2.get(...
Map<String, Object> map4 = new LinkedHashMap<String, Object>(); map4.put("sort", 2); map4.put("name", "小赵"); map4.put("id", "4"); listResult.add(map4); System.out.println("排序前:"); for (Map<String, Object> map : listResult) { ...
判断开始时间是否相同,不同的情况下按照开始时间排序,相同的情况下按照结束时间排序。 list=list.stream().sorted((map1,map2)->{ if (map1.get("start_time").equals(map2.get("start_time").toString())) { return map2.get("end_time").toString().compareTo(map1.get("end_time").toString()...
Map<String, Object> map = new HashMap<String, Object>(); map.put("name", "ZK"); map.put("age", 13); Map<String, Object> map2 = new HashMap<String, Object>(); map2.put("name", "ZA"); map2.put("age", 15); Map<String, Object> map3 = new HashMap<String, Object>()...
/*** 排序= * *@paramlist *@paramsort_key *@return*/publicstaticList<Map<String, Object>> sort(List<Map<String, Object>>list, String sort_key,Boolean asc, String sort_key2,Boolean asc2) { Collections.sort(list, (map1, map2)->{ ...