import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
public class MapSort {
public static void main(String[] args) throws UnknownHostException, SocketException {
List<Map<String, Object>> listResult = new ArrayList<Map<String, Object>>();
Map<String, Object> map1 = new LinkedHashMap<String, Object>();
map1.put("count", 2);
map1.put("name", "abc");
map1.put("key", "acv");
listResult.add(map1);
Map<String, Object> map2 = new LinkedHashMap<String, Object>();
map2.put("count", 3);
map2.put("name", "bbc");
map2.put("key", "bcv");
listResult.add(map2);
Map<String, Object> map3 = new LinkedHashMap<String, Object>();
map3.put("count", 1);
map3.put("name", "cbc");
map3.put("key", "ccv");
listResult.add(map3);
Map<String, Object> map4 = new LinkedHashMap<String, Object>();
map4.put("count", 4);
map4.put("name", "cbc");
map4.put("key", "ccv");
listResult.add(map4);
System.out.println("排序前:");
for (Map<String, Object> map : listResult) {
System.out.println("count:"+map.get("count")+" name:"+map.get("name")+" key:"+map.get("key"));
}
Collections.sort(listResult, new MapComparatorDesc());
System.out.println("降序:");
for (Map<String, Object> map : listResult) {
System.out.println("count:"+map.get("count")+" name:"+map.get("name")+" key:"+map.get("key"));
}
Collections.sort(listResult, new MapComparatorAsc());
System.out.println("升序:");
for (Map<String, Object> map : listResult) {
System.out.println("count:"+map.get("count")+" name:"+map.get("name")+" key:"+map.get("key"));
}
}
static class MapComparatorDesc implements Comparator<Map<String, Object>> {
@Override
public int compare(Map<String, Object> m1, Map<String, Object> m2) {
Integer v1 = Integer.valueOf(m1.get("count").toString());
Integer v2 = Integer.valueOf(m2.get("count").toString());
if (v2 != null) {
return v2.compareTo(v1);
}
return 0;
}
}
static class MapComparatorAsc implements Comparator<Map<String, Object>> {
@Override
public int compare(Map<String, Object> m1, Map<String, Object> m2) {
Integer v1 = Integer.valueOf(m1.get("count").toString());
Integer v2 = Integer.valueOf(m2.get("count").toString());
if(v1 != null){
return v1.compareTo(v2);
}
return 0;
}
}
}
/*运行结果
82 排序前:
83 count:2 name:abc key:acv
84 count:3 name:bbc key:bcv
85 count:1 name:cbc key:ccv
86 count:4 name:cbc key:ccv
87 降序:
88 count:4 name:cbc key:ccv
89 count:3 name:bbc key:bcv
90 count:2 name:abc key:acv
91 count:1 name:cbc key:ccv
92 升序:
93 count:1 name:cbc key:ccv
94 count:2 name:abc key:acv
95 count:3 name:bbc key:bcv
96 count:4 name:cbc key:ccv
97 */
相关推荐
Python xlwings报错解决:从‘NoneType‘到完美运行WPS表格的完整指南
本文深入解析了使用Python xlwings库自动化WPS表格时遇到的经典'NoneType'报错(AttributeError: 'NoneType' object has no attribute 'apps')的根源与解决方案。核心在于pywin32版本与WPS的兼容性问题,文章提供了从版本降级、依赖管理到构建健壮自动化环境的完整实战指南,帮助开发者彻底解决兼容性难题,实现稳定运行。
List<Map<String,Object>>排序的两种方法
package test0419; import java.util.*; import java.util.stream.Collectors; /** * @author zhongzhilong * @date 2021/4/19 * @decription */ public class ListSort { public static void main(String[] args) { List<Map<String, Object>>
R语言实战:5分钟搞定相加交互效应分析(逻辑回归/Cox回归/GLMM/GEE全支持)
本文详细介绍了如何利用R语言中的`scitable`包快速实现相加交互效应分析,支持逻辑回归、Cox回归、GLMM和GEE等多种模型。通过自动化计算RERI、AP和SI等指标,大幅提升临床研究和流行病学分析的效率与准确性,特别适合处理多因素联合作用的复杂场景。
Java List<Map<String, Object>>排序
在开发过程中,我们经常会遇到List格式的数据,需要根据Map集合的某一键值进行排序,我们可以使用Comparator工具类对其排序。废话不多说,直接上代码。
前沿数据解析 | 麻省理工-斯坦福-丰田研究中心电池数据集:AI驱动下的电池寿命早期预测
本文解析了麻省理工、斯坦福与丰田研究中心联合发布的电池数据集,展示了AI驱动下的电池寿命早期预测技术。通过分析124个商用锂离子电池的完整生命周期数据,研究团队仅用前100次循环数据即可准确预测电池报废时间,为电动汽车电池管理提供革命性解决方案。数据集包含LFP/石墨体系电池的详细测试记录,结合差分容量分析和梯度提升树模型,预测精度显著提升。
SpringBoot文件上传实战:MultipartFile重复读取的3种方法(附避坑指南)
本文详细介绍了SpringBoot中处理MultipartFile重复读取的3种实用方法,包括字节数组缓存法、临时文件法和流重置法,并提供了避坑指南和性能优化技巧。特别适合需要多次读取上传文件内容的开发者,帮助解决InputStream流只能读取一次的问题。
如何对List<Map<String, Object>>进行排序
如何对List进行排序
单细胞轨迹分析实战:基于Monocle和CytoTRACE的细胞分化潜能与状态解析
本文提供了基于Monocle和CytoTRACE的单细胞轨迹分析实战指南。通过乳腺癌数据集,详细演示了从数据准备、伪时序分析、细胞分化潜能评估到分支点功能挖掘的全流程。结合两种工具的优势,能有效解析细胞状态动态演变,为发育和疾病研究提供关键见解。
List<Map<String, Object>> 对象如何排序?
List<Map<String, Object>> 对象如何排序? 例: List<Map<String, Object>> list = new ArrayList<>(); Map<String, Object> map = new HashMap<>(); map.put("id",1); map.put("num", 2); list.add(map); map = new HashMap<>
点云从入门到精通技术详解100篇-基于 CBCT 与口内扫描数据的牙齿点云配准
口扫生成的三维牙模型只包含牙冠结构,容易受到唾液、食物残留等杂质的干扰。像精度,但其扫描成本较高,在公立医院的普及率较低。此外,口扫探入式的体。完整、精确的牙齿信息,有助于医生更好地进行数字化辅助诊疗,提高手术的预。可以表示上颌骨、下颌骨、牙冠以及牙根的位置和形状,但其扫描分辨率较低,精配准前实现粗略的预配准来确定点云间的初始位置,为精配准提供良好的配准。该算法通过计算点对间的距离确定源点云中的某一点在目标点云中的对应。算两点之间的欧氏距离,运算量较大,而且由于算法只考虑点集间的距离而忽略。
气象水文资料预处理:缺测数据插补延长等
简介气象水文资料预处理
List<Map<String,Object>>进行排序
请用Java语言写出对List<Map<String,Object>>进行排序的函数,参数为String[] keys和String[] orders,即涉及排序的key和key对应的升序(ASC)或是降序(DESC). 普通方法实现: package com.ujiuye.oop; import java.util.*; public class Demo4 { public static void main(String[] args) { M
PCL Trimmed ICP实现点云精配准【2025最新版】
博客长期更新,本文最新更新时间为:2025年6月25日。抄袭狗记得来抄最新代码哦,抄都抄成错的,不够丢人钱。
深入List<map<string,object>> 集合排序的方法总结
由于最近接口中有一些数据是从MySQL中查询出来的,使用Rest请求返回的数据是List<map<string,object>>类型。 原始数据返回结构: 1.需求的来源 如下返回的resourceId需要进行排序,呵呵,能排序,就是比较麻烦点,我找机会参阅资料总结一下吧。 { "total": 15, "data": [ { "leaf": "true", "resourceId": "/ne=1000
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
jdk1.8 利用 stream 对List<Map<String, Object>> 分组 List<Map<String, Object>>排序
List<Map<String, Object>> 分组 //根据工号进行分组 List<Map<String, Object>> dataList = ((PageResult<Map<String, Object>>) tuple.e2).getItems(); Map<String, List<Map<String, Object>>> groupByEmpI
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
java中List<Map<String,Object>> 排序总结
public static void main(String[] args) { List<Map<String, Object>> Result = new ArrayList<Map<String, Object>>(); Map<String, Object> map1 = new LinkedHashMap<String, Object>(); .
WINCC7.3破解文件
WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!
Java中List<Map<String, Object>>排序方法
说明:针对 List<Map<排序基准date, 对象>>这样的list进行排序: 放到List中的Map是固定格式的,key为日期(可以排序的key,可以是数字或其他字符串),然后需要将List按照Map的key进行排序。 pom用到了: <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok&l
Java List<Map<String,Object>> 集合根据Map里的某个值大小进行排序
List<Map<String,Object>> 集合根据Map里的某个值大小进行排序 实现代码: import java.net.SocketException; import java.net.UnknownHostException; import java.util.*; public class hhh { public static void main(String[] args) throws UnknownHostException, SocketExcep
Comparator接口实现List<Map<String, Object>>排序
Comparator接口实现List<Map<String, Object>>排序 List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); Collections.sort(list, new Comparator<Map<String,Object>>() { public int compare(Map<
排序:List<Map<String, Object>>
排序:List<Map<String, Object>>
list map String,Object 排序的方法
Collections.sort(list, new Comparator<Map<String, Object>>() { public int compare(Map<String, Object> o1, Map<String, Object> o2) { Integer name1 =...
【List<Map<String,Object>>的排序】
package cn.stylefeng.guns.common.utils; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.Map; public class PageUt
使用java8 对List<Map<String,Object>>类型以及List<实体类>进行排序
对ListMap进行排序 @Test public void test1() { //根据map中的某个字段值 排序 Map<String,Object> map1 = new HashMap<>(); map1.put("SUM",333.123); map1.put("NAME","张1"); Map<String,Object> map2 = new HashMap<>(); map2.put("SUM",1333.123);
List 中根据 Map String,Object 的某个值排序
List<Map<String, String> resultList = new ArrayList<>(); resultList.sort((o1, o2) -> { String key1 = o1.get("time"); String key2 = o2.get("time"); ...
Java 根据Map的值对 List<Map<String, Object>> 进行排序
有一个Map列表, 需要对这个列表, 按Map的某几个value进行排序, 并且还要分别指定正序或者倒序. 这个实现在数据库中是非常简单的, 一串 order by col1 asc, col2 desc 搞定, 但是在Java中, 就会比较啰嗦. 记录一下, 在对比两个具体值的时候, 区分类型实现的compare方法....
302



被折叠的 条评论
为什么被折叠?



