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); 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM