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 ...
随机推荐
- DX关联VS
// Windows API: #include <windows.h> // C 运行时头文件,测试可能会用到 #include <stdlib.h> //standa ...
- JavaDailyReports10_19
今日学习超链接 1.文本链接 使用一对<a>标签 格式:< href ="目标URL" target="目标窗口"> 指针文本 & ...
- hadoop3.2+Centos7+5个节点主从模式配置
准备工作: hadoop3.2.0+jdk1.8+centos7+zookeeper3.4.5 以上是我搭建集群使用的基础包 一.环境准备 master1 master2 slave1 slave2 ...
- 企业集群架构-02-Rsync
Rsync 目录 Rsync Rsync基本概述 Rsync应用场景 Rsync传输模式 Rsync服务使用 (1)服务端安装Rsync (2)服务端配置Rsync (3)服务端创建用户 (4)服务端 ...
- maxmemory-policy
maxmemory-policy 配置的策略 noeviction: 不删除策略, 达到最大内存限制时, 如果需要更多内存, 直接返回错误信息.(默认值) allkeys-lru: 所有key通用; ...
- Redis缓存篇(二)淘汰机制:缓存满了怎么办?
上一讲提到,缓存的容量总是小于后端数据库的.随着业务系统的使用,缓存数据会撑满内存空间,该怎么处理呢? 本节我们来学习内存淘汰机制.在Redis 4.0之前有6种内存淘汰策略,之后又增加2种,一共8种 ...
- MP(MyBatis-Plus)的自动填充功能
什么是自动填充 有些表中会有更新时间.创建时间.更新人或者创建人这些字段. 每次对数据进行新增.删除.修改时都需要对这些字段进行设置.传统的做法是在进行这些操作前,对Entity的字段进行set设置, ...
- 【项目实践】一文带你搞定Session和JWT的登录认证方式
以项目驱动学习,以实践检验真知 前言 登录认证,估计是所有系统中最常见的功能了,并且也是最基础.最重要的功能.为了做好这一块而诞生了许多安全框架,比如最常见的Shiro.Spring Security ...
- 新蜂商城的mybatis plus版本,添加了秒杀专区、优惠卷领取以及后台搜索功能
本项目是在newbee-mall项目的基础上改造而来,将orm层由mybatis替换为mybatis-plus,添加了秒杀功能.优惠劵功能以及后台搜索功能,喜欢的话麻烦给我个star 后台管理模块添加 ...
- 【Java并发集合】ConcurrentHashMap源码解析基于JDK1.8
concurrentHashMap(基于jdk1.8) 类注释 所有的操作都是线程安全的,我们在使用时无需进行加锁. 多个线程同时进行put.remove等操作时并不会阻塞,可以同时进行,而HashT ...