Java使用DateUtils对日期进行数学运算经典应用示例【附DateUtils相关包文件下载】

 更新时间:2017年11月23日 15:30:25   作者:初级以上  
这篇文章主要介绍了Java使用DateUtils对日期进行数学运算的方法,可实现针对日期时间的各种常见运算功能,并附带DateUtils的相关包文件供读者下载使用,需要的朋友可以参考下

本文实例讲述了Java使用DateUtils对日期进行数学运算的方法。分享给大家供大家参考,具体如下:

最近在写数据上传的程序,需要对Date进行一些数学运算,个人感觉在java中,日期的数学运算还是比较常用的,所以把Date的数学运算都玩了一下。试了一下,发现DateUtils这个工具类对于Date的数学运算非常方便,见代码吧。

package date;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.lang3.time.DateUtils;
public class DateCalculate {
  /**
   * 日期格式的运算
   * @param args
   */
  public static void main(String[] args) {
    System.out.println("脚本之家测试结果:");
    Date now = new Date();
    SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println("------当前时间--------:" + sd.format(now));
    //年: 加、减操作
    System.out.println("1年之后:"+sd.format(DateUtils.addYears(now, 1)));
    System.out.println("1年之前:"+sd.format(DateUtils.addYears(now, -1)));
    //月: 加、减操作
    System.out.println("1个月之后:"+sd.format(DateUtils.addMonths(now, 1)));
    System.out.println("1个月之前:"+sd.format(DateUtils.addMonths(now, -1)));
    //周: 加、减操作
    System.out.println("1周之后:"+sd.format(DateUtils.addWeeks(now, 1)));
    System.out.println("1周之前:"+sd.format(DateUtils.addWeeks(now, -1)));
    //天: 加、减操作
    System.out.println("昨天的这个时候:" + sd.format(DateUtils.addDays(now, -1)));
    System.out.println("明天的这个时候:" + sd.format(DateUtils.addDays(now, 1)));
    //小时: 加、减操作
    System.out.println("1小时后:" + sd.format(DateUtils.addHours(now, 1)));
    System.out.println("1小时前:" + sd.format(DateUtils.addHours(now, -1)));
    //分钟: 加、减操作
    System.out.println("1分钟之后:"+sd.format(DateUtils.addMinutes(now, 1)));
    System.out.println("1分钟之前:"+sd.format(DateUtils.addMinutes(now, -1)));
    //秒: 加、减操作
    System.out.println("10秒之后:"+sd.format(DateUtils.addSeconds(now, 10)));
    System.out.println("10秒之前:"+sd.format(DateUtils.addSeconds(now, -10)));
    //毫秒: 加、减操作
    System.out.println("1000毫秒之后:"+sd.format(DateUtils.addMilliseconds(now, 1000)));
    System.out.println("1000毫秒之前:"+sd.format(DateUtils.addMilliseconds(now, -1000)));
  }
}

运行结果:

注意:代码中引入了org.apache.commons.lang3.time.DateUtils;,直接运行程序会报错!读者可到官网提供的类库下载地址下载相应的组件,也可点击此处本站下载

最终文件的参考目录结构如下:

PS:这里再为大家推荐几款关于日期与时间计算的在线工具供大家参考使用:

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线万年历日历:
http://tools.jb51.net/bianmin/wannianli

在线阴历/阳历转换工具:
http://tools.jb51.net/bianmin/yinli2yangli

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于java相关内容感兴趣的读者可查看本站专题:《java日期与时间操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • Java核心技术之反射

    Java核心技术之反射

    本文非常详细的讲解了java反射的相关资料,java反射在现今的使用中很频繁,希望此文可以帮大家解答疑惑,可以帮助大家理解
    2021-11-11
  • Java关键词final示例解读

    Java关键词final示例解读

    这篇文章主要介绍了Java关键词final解读,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-12-12
  • SpringCloud 服务注册中的nacos实现过程

    SpringCloud 服务注册中的nacos实现过程

    这篇文章主要介绍了SpringCloud 服务注册之nacos实现过程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • java 中设计模式(装饰设计模式)的实例详解

    java 中设计模式(装饰设计模式)的实例详解

    这篇文章主要介绍了java 中设计模式(装饰设计模式)的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • Java编程反射机制用法入门与实例总结

    Java编程反射机制用法入门与实例总结

    这篇文章主要介绍了Java编程反射机制用法,简单说明了反射机制的概念、原理并结合实例形式总结分析了java反射机制的简单使用方法与相关注意事项,需要的朋友可以参考下
    2017-12-12
  • SpringBoot中的自定义Starter解读

    SpringBoot中的自定义Starter解读

    这篇文章主要介绍了SpringBoot中的自定义Starter解读,启动器模块其实是一个空的jar文件,里面没有什么类、接口,仅仅是提供辅助性依赖管理,这些依赖可能用于自动装配或者其他类库,需要的朋友可以参考下
    2023-12-12
  • IDEA取消SVN关联,再重新分享项目的操作

    IDEA取消SVN关联,再重新分享项目的操作

    这篇文章主要介绍了IDEA取消SVN关联,再重新分享项目的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • Java单例模式的创建,破坏和防破坏详解

    Java单例模式的创建,破坏和防破坏详解

    大家所熟知的单例模式只能创建唯一一个实例,今天我们介绍几种常见的单例模式,同时说一说如何破坏单例模式,同时又怎么来防破坏
    2021-09-09
  • Maven中resources标签的用法详解

    Maven中resources标签的用法详解

    本文主要介绍了Maven中resources标签的用法详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Mybatis注解开发@Select执行参数和执行sql语句的方式(最新详解)

    Mybatis注解开发@Select执行参数和执行sql语句的方式(最新详解)

    @Select 是 Mybatis 框架中的一个注解,用于执行 SQL 查询语句,并把查询结果映射到指定的 Java 对象中,这篇文章主要介绍了Mybatis注解开发@Select执行参数和执行sql语句的方式,需要的朋友可以参考下
    2023-07-07

最新评论