ITPub博客

首页 > 数据库 > 数据库开发技术 > Java 如何实现对日期的加减操作?

Java 如何实现对日期的加减操作?

原创 数据库开发技术 作者:deaming317 时间:2020-03-26 22:21:23 0 删除 编辑

点击上方“程序员Style”,星标公众号

重磅干货,第一时间送达

每日干货

每日分享,获取 数据库相关资料,在“程序员Style”微信公众号后台回复文字“数据库”即可!


   阅读本文约需要3分钟

今天在做项目时,遇到了对时间的加减进行操作的需求,根据传入的日期字符串,操作参数("+","-"),加数(要操作的天数),对日期进行加减操作,得到新的日期时间,经查询资料,自己写了一个Demo测试类,通过调试可以正常的实现时间的加减,现将代码分享如下,希望对遇到的朋友们有所帮助!


package com.ltw.test; import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar; public class Test {   @SuppressWarnings("deprecation")  public static void main(String[] args) {        //根据传入的日期字符串,操作参数("+","-"),加数(要操作的天数),对日期进行加减操作    String dateStr = "2020-03-26 18:20:23";        // 转化原时间的的格式(发现用带'-'的字符串进行Date.parse() 时会报错,经过这样替换可以实现)    String str = dateStr.replace("-", "/");        // 加减时间类型    String operator = "+";        // 加减的天数    Integer i = 20;        // 定义变量接收转化的时间值    long j = 0;    Date date = null;        try {      j = Date.parse(str);      date = new Date(j);    } catch (Exception e) {      e.printStackTrace();    }    GregorianCalendar gc = new GregorianCalendar();    gc.setTime(date);     if ("+".equals(operator)) {      gc.add(GregorianCalendar.DATE, i);     } else if ("-".equals(operator)) {      gc.add(GregorianCalendar.DATE, (-i));    }        Date a = gc.getTime();    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        System.out.println(sdf.format(a));      }}


感觉不错的话,麻烦动动小手关注一下小编啦

如有收获,点个【在看】

原文作者:程序员Style;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-03-04

  • 博文量
    119
  • 访问量
    52244