分享好友 最新动态首页 最新动态分类 切换频道
集合排序按照时间以及工具类
2024-12-27 11:36

private static void ListSort(List<Work_log> list) {
Collections.sort(list, new Comparator<Work_log>() {
@Override
public int compare(Work_log o1, Work_log o2) {
try {
// if (o1.getStart_date().getTime() > o2.getStart_date().getTime()) {
// return -1; //降序
// } else
// if (o1.getStart_date().getTime() < o2.getStart_date().getTime()) {
// return 1;
// } else {
// return 0;
// }
if(o1.getStart_date().after(o2.getStart_date())){
return 1;//升序
}
return -1;
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
});

}

集合排序按照时间以及工具类

 

 

 

 

 

--------------------------工具类

//sort(randomList, "getType", "desc");//排序题


import java.lang.reflect.Method;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;


@SuppressWarnings({ "unchecked", "rawtypes" })
public <T> void sort(List<T> targetList, final String sortField, final String sortMode) {
Collections.sort(targetList, new Comparator() {
public int compare(Object obj1, Object obj2) {
int retVal = 0;
try {
Method method1 = ((T)obj1).getClass().getMethod(sortField, null);
Method method2 = ((T)obj2).getClass().getMethod(sortField, null);
if (sortMode != null && "desc".equals(sortMode)) {
retVal = method2.invoke(((T) obj2), null).toString().compareTo(method1.invoke(((T) obj1), null).toString()); // 倒序
} else {
retVal = method1.invoke(((T) obj1), null).toString().compareTo(method2.invoke(((T) obj2), null).toString()); // 正序
}
} catch (Exception e) {
throw new RuntimeException();
}
return retVal;
}
});
}

 

List<Map<String,Object>> list=new ArrayList<>();
Map<String,Object> map1=new HashMap<>();
map1.put("a", 1);
map1.put("create", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2020-09-10 23:59:59"));
list.add(map1);
Map<String,Object> map2=new HashMap<>();
map2.put("a", 2);
map2.put("create", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2020-09-30 23:59:59"));
list.add(map2);
Map<String,Object> map3=new HashMap<>();
map3.put("a", 3);
map3.put("create", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2020-09-19 23:59:59"));
list.add(map3);

list.sort((a,b)->{
Date d = (Date) a.get("create");
Date e = (Date) b.get("create");
if(d.getTime()>e.getTime()){
return 1;
}else{
return -1;
}

最新文章
耐用性问题
科技媒体 sammyfans 昨日(12 月 16 日)发布博文,报道称部分三星 Galaxy S24 Ultra 手机的超强防反光涂层存在耐用性问题,未能达到预期效果。IT之家曾于今年 1 月报道,三星在宣传 Galaxy S24 Ultra 时主要提及了钛金属、AI 等诸多亮点,
除菌过滤器
[1]国产品牌滤芯均为我司生产的替代原厂品牌滤芯,其过滤滤材采用德国原装进口HV公司产品,注册商标为佳洁牌。本公司涉及的其它品牌均无品牌意义,只是作为产品型号参照和客户选型对照使用。进口滤芯和过滤器为原装进口,有防伪标志。我司
【国盛计算机】海外智能驾驶持续放大招
登录新浪财经APP 搜索【信披】查看更多考评等级  炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会!FSD v13已向部分用户发布,特斯拉端到端算法持续迭代。根据特斯拉自动驾驶工作人员Ashok Elluswamy的推特信息
造有道 智万物——德勤人工智能制造业应用调查
二、应用场景人工智能在制造业的应用场景众多,大致可以分为智能生产、产品和服务、企业运营管理、供应链以及业务模式决策五个领域。智能生产相关场景应用是目前制造企业部署人工智能的首要选择,其次为产品和服务相关场景。但未来两年,人
迁移 TiDB 数据库的数据至 OceanBase 数据库 MySQL 租户
数据传输支持创建源端 TiDB 数据库至目标端 OceanBase 数据库 MySQL 租户的数据迁移任务。您可以通过结构迁移、全量迁移和增量同步等,无缝迁移源端数据库的存量业务数据和增量数据至 OceanBase 数据库 MySQL 租户。TiDB 数据库支持在线事
清华大学—中国医药集团有限公司医药创新联合研究院正式揭牌
报告要点继续做好重点传染病防控。居民医保人均财政补助标准提高30元。促进医保、医疗、医药协同发展和治理。推动基本医疗保险省级统筹,完善国家药品集中采购制度,强化医保基金使用常态化监管,落实和完善异地就医结算。健康,紧密关联着
豆包概念股热度持续!上百家机构调研这一领域
  近日,AI再次成为市场焦点。继股、智谱概念股后,抖音豆包概念股成为当下“最靓的仔”。  相关概念股也被机构“踏破门槛”,近日,多只抖音豆包概念股获得上百家机构调研,如、、、等。  豆包概念股热度持续   盘面上,12月12日
上杭卫生间漏水维修电话〈免费上门〉上杭县卫生间渗水维修
不砸砖、不砸墙;免砸砖防水补漏技术,2小时快速解决漏水问题,超长保修期。漏水维修服务项目:泳池渗水、外墙飘窗渗水、玻璃房漏水、卫生间漏水、洗浴间漏水、厨房间漏水、天花板漏水、墙角渗水、地下室渗水、窗台防水补漏、楼顶防水、防水施
用AI绘画轻松生成超逼真美女写真,快来了解这款神器吧!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个数字化与科技迅速发展的时代,艺术创作的方式也在悄然改变。许多人可能会想,如何能够
相关文章
推荐文章
发表评论
0评