赞
踩
通常我们接受到一个Map集合需要判断其中的时间是否过期会怎么操作呢?
下面将给出两种方法:
第一种:直接根据Date中自带的before()方法进行处理,源码如下:
- public static void main(String[] args) {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- try {
- Date olderDate = sdf.parse("2008-07-10 19:20:00");
- Date nowDate = new Date();
- Map<String, Object> map = new HashMap<>();
- map.put("finishDate", olderDate);//将时间放入Map集合中(你也可以多放几组,关系不大)
- String ddd = String.valueOf(map.get("finishDate"));//根据key值将你所需要对比的时间取出
- if (nowDate.before(new Date(ddd))) {
- System.out.println("没有过期");
- } else {
- System.out.println("已过期");
- }
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
结果如下:
第二种方法通过时间戳进行处理,需要将时间转换为时间戳
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- try {
- Date olderDate = sdf.parse("2025-05-10 19:20:00");
- Date nowDate = new Date();
- Map<String, Object> map = new HashMap<>();
- map.put("finishDate", olderDate);
- String ddd = String.valueOf(map.get("finishDate"));
- long friendTime = new Date(ddd).getTime();//取出的时间戳
- long currentTime = nowDate.getTime();//当前时间戳
- if (friendTime > currentTime) {
- System.out.println("没有过期");
- } else {
- System.out.println("已过期");
- }
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
运行结果如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。