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 ...
随机推荐
- 2.Redis info命令详解
命令 127.0.0.1:6379> info [server|clients|memory|stats|...] # Server redis_version:5.0.4 #redis版本 r ...
- 自定义 demo 集合
各种写着玩的自定义控件demo 有时网上看到一些比较有意思的开源项目,有时间的话就会自己也撸一个出来,但是一般只关注实现样式.动画等,不会太去细致完整地完成,俗称占个坑~ 持续更新中... githu ...
- Object[] cannot be converted to String[]
原因: 你应该是想把List数组转 String数组吧! 然后想当然的调用list.toArray()方法. 结果 该方法返回的是Object[]数组,导致类型不匹配! 解决办法: 还在乖乖的用循环吧 ...
- 如何在 Linux 系统查询机器最近重启时间
如何在 Linux 系统查询机器最近重启时间 在你的 Linux 或类 UNIX 系统中,你是如何查询系统上次重新启动的日期和时间?怎样显示系统关机的日期和时间? last 命令不仅可以按照时间从近到 ...
- 第七章节 BJROBOT 选择区域自主构建地图【ROS全开源阿克曼转向智能网联无人驾驶车】
1.把小车平放在地板上,用资料里的虚拟机,打开一个终端 ssh 过去主控端启动roslaunch znjrobot bringup.launch 2.在虚拟机端再打开一个终端,ssh 过去主控端启动r ...
- Java Object to Class
User user = new User(username,password); //添加构成JWT的参数 JwtBuilder builder = Jwts.builder().setHeaderP ...
- 浅谈java中异常处理
java语言的异常捕获结构是由try.catch.finally,try中语句块是可能发生异常的java语句,catch用来激发捕获的异常,try语句块中如果发生异常,则调到catch语句块中执行ca ...
- linux hosts_access
linux hosts_access 概要 tcp连接的访问控制功能,通过libwrap提供,即编译到代码里的访问控制功能 可以通过ldd 命令查看程序是否链接了libwrap库 主要根据程序名称,以 ...
- Spring Boot 2.x基础教程:多个文件的上传
昨天,我们介绍了如何在Spring Boot中实现文件的上传.有读者问:那么如果有多个文件要同时上传呢?这就马上奉上,当碰到多个文件要同时上传的处理方法. 动手试试 本文的动手环节将基于Spring ...
- springboot源码解析-管中窥豹系列之aware(六)
一.前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去. 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot ...