zoukankan      html  css  js  c++  java
  • DateUtils常用方法

    一、DateUtils常用方法

     

    1.1.常用的日期判断

    • isSameDay(final Date date1, final Date date2):判断两个时间是否是同一天
    • isSameInstant(final Date date1, final Date date2):判断两个时间是否为同一毫秒

    常用的时间判断示例代码

    DateUtils.isSameDay(new Date(),new Date());
    DateUtils.isSameInstant(new Date(), new Date());
    

      

     

    1.2.日期的基本操作

    String转Date

    parseDate(final String str, final Locale locale, final String... parsePatterns) throws ParseException

     DateUtils.parseDate("20181223 12:34:23",  Locale.TRADITIONAL_CHINESE,"yyyy-MM-dd HH:mm:ss");
    

    Date转String

    可以使用DateFormatUtils.format()方法

    DateFormatUtils.format(new Date(),"yyyy-MM-dd HH:mm:ss");
    

    日期加减

    addYears(final Date date, final int amount),对日期进行加减年分操作,amount为正数表示加,负数表示减。同理,还有addMonths加减月份,addDays加减日,addWeeks加减周,addHours加减小时,addMinutes加减分钟等方法,具体使用可以参看源码。

    Date date = DateUtils.addYears(new Date(), 3);
    

    日期设置

    setYears(final Date date, final int amount),给指定的日期设置指定的年份,同理,setMonths设置月份,setDays设置日,setHours设置小时等等方法。

    Date date1 = DateUtils.setYears(new Date(), 2018);
    

    日期四舍五入

    round(final Date date, final int field),将指定的日期中指定的部分四舍五入,四舍五入的 常量有Calendar.YEARCalendar.MONTHCalendar.HOUR_OF_DAYCalendar.DAY_OF_MONTHCalendar.HOURCalendar.MINUTE等;

    /*当前时间:2018-11-25 00:50:57,结果为:2019-01-01 00:00:00*/ 
    Date round = DateUtils.round(new Date(), Calendar.YEAR);
    

    日期截取

    truncate(final Date date, final int field)round差距在于不会四舍五入,截取的常量字段有Calendar.YEARCalendar.MONTHCalendar.HOUR_OF_DAYCalendar.DAY_OF_MONTHCalendar.HOURCalendar.MINUTE等。

    /*当前时间:2018-11-25 00:58:03 ,结果为:2018-01-01 00:00:00*/
    Date truncate = DateUtils.truncate(new Date(), Calendar.YEAR);
    

    获取指定时间的天数

    getFragmentInDays(final Date date, final int fragment)获取指定时间的天数,fragment可以是Calendar.YEAR获取年已经过了多少天,同理,Calendar.MONTH月份过去了多少天,当然还有getFragmentInSeconds过去多少秒,getFragmentInMinutes过去多少分钟,getFragmentInHours过去多少小时等。

    /*当前时间:2018-11-25 00:58:03 ,结果为:329*/
    long fragmentInDays = DateUtils.getFragmentInDays(new Date(), Calendar.YEAR);
    

    比较日历字段是否相等

    truncatedEquals(final Date date1, final Date date2, final int field)可以比较年,月,日等日历字段。

    boolean b = DateUtils.truncatedEquals(new Date(), new Date(), Calendar.YEAR);
    
     
  • 相关阅读:
    SQL Server中出现用户或角色在当前数据库已经存在的问题的解决
    vs项目中添加lib库的方法总结
    【转载】C++ Socket通信总结(附C++实现)
    【转载】windows socket函数详解
    如何在 Debian 9 下安装 LEMP 和 WHMCS 7.5
    13个云计算基础设施自动化的最佳工具
    5分钟打造一个前端性能监控工具
    我的处女作——设计模式之状态模式
    IOS逆向分析笔记——replay逆向分析
    IOS逆向分析——GL脚本的提取
  • 原文地址:https://www.cnblogs.com/qianpangzi/p/10795442.html
Copyright © 2011-2022 走看看