list中map 的value值时间排序
public static void main(String[] args) {
String sys=DateUtil.getTime().substring(0,5);
System.out.println(sys);
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
Calendar nowTime = Calendar.getInstance();
nowTime.add(Calendar.MINUTE, -10);
System.out.println(sdf.format(nowTime.getTime()));
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
List<Map<String, Object>> alarmMaps = new ArrayList();
HashMap<String, Object> hashMap = new HashMap<>();
HashMap<String, Object> hashMap2 = new HashMap<>();
HashMap<String, Object> hashMap3 = new HashMap<>();
hashMap.put("TIME_NAME", "14:20");
hashMap.put("TIME_TYPE", "1");
hashMap2.put("TIME_NAME", "12:00");
hashMap2.put("TIME_TYPE", "1");
hashMap3.put("TIME_NAME", "9:00");
hashMap3.put("TIME_TYPE", "1");
alarmMaps.add(hashMap);
alarmMaps.add(hashMap2);
alarmMaps.add(hashMap3);
// 注:alarmMaps里面存在 count 属性
// String a="12:00";
// Integer valueOf = Integer.valueOf(a);
// System.out.println(valueOf);
//排序 倒序
if (alarmMaps != null && alarmMaps.size() > 1) {
Collections.sort(alarmMaps , new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
Integer o1Value = Integer.valueOf(o1.get("TIME_NAME").toString().replace(":", ""));
Integer o2Value = Integer.valueOf(o2.get("TIME_NAME").toString().replace(":", ""));
return o1Value.compareTo(o2Value);
}
});
//14:00 <14:10-8
if (alarmMaps.get(alarmMaps.size()-1).get("TIME_NAME").toString().replace(":", "").compareTo(sdf.format(nowTime.getTime()).replace(":", ""))<0) {
alarmMaps.get(alarmMaps.size()-1).put("TIME_TYPE", "2");
// a.replace("1", "2");
}
}
for (Map<String, Object> map : alarmMaps) {
System.out.println(map.get("TIME_NAME"));
System.out.println(map.get("TIME_TYPE"));
}
}
//09:00@10:30@10:00@09:30
List<String> nums = new ArrayList<String>();
String a="09:00@10:30@10:00@09:30";
String[] timeArr=a.toString().split("@");
for(int i=0;i<timeArr.length;i++){
nums.add(String.valueOf(timeArr[i]));
}
Collections.sort(nums);
String[] timeArr2 = new String[nums.size()];
if (nums.size()>0) {
for (int i = 0; i < nums.size(); i++) {
timeArr2[i]=nums.get(i);
}
}
}
list中map 的value值时间排序的更多相关文章
- C++中实现对map按照value值进行排序 - 菜鸟变身记 - 51CTO技术博客
C++中实现对map按照value值进行排序 - 菜鸟变身记 - 51CTO技术博客 C++中实现对map按照value值进行排序 2012-03-15 15:32:36 标签:map 职场 休闲 排 ...
- Java中Map根据键值(key)或者值(value)进行排序实现
我们都知道,java中的Map结构是key->value键值对存储的,而且根据Map的特性,同一个Map中 不存在两个Key相同的元素,而value不存在这个限制.换句话说,在同一个Map中Ke ...
- 使用Java8 Stream API对Map按键或值进行排序
一.什么是Java 8 Stream 使用Java 8 Streams,我们可以按键和按值对映射进行排序.下面是它的工作原理: 将Map或List等集合类对象转换为Stream对象 使用Streams ...
- python中字典按键、值进行排序
看到排序,就不禁想起python中的sort和sorted sort是列表中的方法,用于对列表进行排序(改变的是原列表,不返回新列表) 用法: list.sort(key=None,reverse=T ...
- JAVA中对List<map<String,Object>>根据map某个key值进行排序
方法compareTo()比较此对象与指定对象的顺序.如果该对象小于.等于或大于指定对象,则分别返回负整数.零或正整数.返回整数,1,-1,0:返回1表示大于,返回-1表示小于,返回0表示相等. 普通 ...
- JAVA中对list map根据map某个key值进行排序
package test; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; ...
- java map 根据 map的value值进行排序
//根据销量排行查询 public void queryGoodsByHotCount(){ //将map集合键和值封装到entry对象中 然后转换成set集合 Set<Entry<Int ...
- c++中map按key和value排序
``` #include<iostream> #include<algorithm> #include<vector> #include<map> #i ...
- 小程序中map的取值和赋值
1.初始化 resultMap: { "near": [], "join": [], "publish": [] } 2.js中直接取 co ...
随机推荐
- 函数进阶· 第3篇《常用内置函数filter()、map()、zip(),怎么用的呢?》
坚持原创输出,点击蓝字关注我吧 作者:清菡 博客:oschina.云+社区.知乎等各大平台都有. 由于微信公众号推送改为了信息流的形式,防止走丢,请给加个星标 ,你就可以第一时间接收到本公众号的推送! ...
- Redis基础篇(四)持久化:内存快照(RDB)
AOF好处是每次执行只需要记录操作命令,记录量不大.但在故障恢复时,需要逐一执行AOF的操作命令,如果日志很大,恢复就很慢. 今天学习另一种持久化方式:内存快照.内存快照,是Redis某一时刻的状态, ...
- mysql存储过程定义者
1. 执行update mysql.proc set DEFINER='root@%' WHERE NAME='p_update_rim_batch_log' AND db='otherdataonl ...
- 【译】对Rust中的std::io::Error的研究
原文标题:Study of std::io::Error 原文链接:https://matklad.github.io/2020/10/15/study-of-std-io-error.html 公众 ...
- JavaDailyReports10_06
今日收获: 一.所有引用类型变量的初始化一定要使用new 关键字定义声明,空指针异常的错误原因可能是变量没有初始化导致的. 每一个类体的数据成员一定要在实例化的同时赋值,用一个实例化的类实现问题中最小 ...
- Java学习日报8.5
package student;import java.util.*;public class student { Scanner sc=new Scanner(System.in); private ...
- Atcoder abc187 F Close Group(动态规划)
Atcoder abc187 F Close Group 题目 给出一张n个点,m条边的无向图,问删除任意数量的边后,留下来的最少数量的团的个数(\(n \le 18\) ) 题解 核心:枚举状态+动 ...
- TurtleBot3使用课程-第三节a(北京智能佳)
目录 1.[第5类]操纵 2 1.1 软件的安装 2 1.2 硬件设置 2 1.3 打开CR设置 4 1.4 TurtleBot3 提出 5 1.4.1运行 5 1.4.2 Turtle Bot3模型 ...
- 读《白帽子讲web安全》 ——笔记
第二章 浏览器安全 什么是同源策略? 同源策略,它是由Netscape提出的一个著名的安全策略. 现在所有支持JavaScript 的浏览器都会dao使用这个策略. 所谓同源是指,域名,协议,端口相同 ...
- 一次mongo查询不存在字段引发的事故
话说今天的一个小小的查询失误给了我比较深刻的教训,也让我对mongo有了更深刻的理解,下面我们来说说这个事情的原委: 我们经常使用阿里云子账号在DMS上查询线上数据库数据,今天也是平常的一次操作 集合 ...