首先,需要定义一个Comparator,用于指定排序的规则。例如,如果需要按照Map中的某个键进行排序,可以定义如下: 代码语言:txt 复制 public class MapComparator implements Comparator<Map<String, Object>> { private String key; public MapComparator(String key) { this.key = key; } @Override public int compare...
importjava.util.Collections;importjava.util.List;importjava.util.Map;publicclassRankingExample{publicstaticvoidmain(String[]args){List<Map<String,Object>>dataList=getDataList();// 假设已有数据集合Collections.sort(dataList,newScoreComparator());// 根据score字段排序// 排序完成后,dataList中的数据已按...
List<Map<String, Object>> result =newArrayList<Map<String,Object>>(forcaseResulMap.values());//对list根据里面的map结构的key为time的字段进行排序result=result.stream().sorted((map1,map2)->{returnmap1.get("time").toString().compareTo(map2.get("time").toString()); }).collect(Collectors.t...
Map<String, Object> map2 =newHashMap<String, Object>(); map2.put("name","ZA"); map2.put("age",15); Map<String, Object> map3 =newHashMap<String, Object>(); map3.put("name","CX"); map3.put("age",20); Map<String, Object> map4 =newHashMap<String, Object>(); ...
其实按照博主的方法建立实体类来使用Java 8 stream()新特性进行排序的方式应该是最合适的方式。无奈项目里由于受同事的影响,基本都不建立实体类,所有现在用起来必须用List<Map<String,Object>>来接受查询结果,导致使用stream()方法有点麻烦。感觉建实体类来使用Java 8 新特性会更方便一些。最初的排序要求只需要...
(map2);//排序前for(Map<String,Object>map:list){System.out.println(map.get("cj"));}Collections.sort(list,newComparator<Map<String,Object>>(){public intcompare(Map<String,Object>o1,Map<String,Object>o2){Integer name1=Integer.valueOf(o1.get("cj").toString());//name1是从你list里的第...
map只会根据key来排序,Map<String,Map<String,Object>> 你这个的话,它就根据String来排序,而且map是接口,只有TreeMap才会根据元素的大小关系来进行排序操作,针对采用Comparable<T>接口的元素才能进行TreeMap排序,
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) { ...
String name=sysUser.name(); Map<String, Object> map =newHashMap<>(); map.put("id", userId); map.put("name", name); list.add(map); }//将List集合按照Map的name进行排序(a>b>c ...)if(CollectionUtils.isNotEmpty(list)){