如題,例如今天是2017.6.21 我怎麼得到上個禮拜的禮拜一2017-06-12
謝邀。
我記得java的Date處理好像有什麼問題來著,具體我忘了。一般使用企業級的Time框架Joda-Time,舉個例子:
//今天 DateTime today = DateTime.now(); //上周的今天 DateTime sameDayLastWeek = today.minusWeeks(1); //上周的周一 DateTime mondayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.MONDAY); //上周的周日 DateTime sundayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.SUNDAY);
說Java的Date處理有什麼問題的嘛,那是以前的java.util.Date, 現在的新包java.time的API處理時間也是非常方便,API都是參考了很多優秀的Time框架,例如Joda-Time,所以,要用還是用自家的API噻,哈哈,畢竟是親兒子
java.util.Date
java.time
Joda-Time
LocalDate newLocalDate = LocalDate.of(2017, 6, 21).minusWeeks(1l) .with(DayOfWeek.MONDAY);
哈哈,是不是很簡潔...比Joda-Time這個私生子是不是更簡潔點...簡直爽~~~嘎嘎嘎
LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)我現在是這樣寫的,不知道還有沒有更好的寫法
雷雷
謝邀。
我記得java的Date處理好像有什麼問題來著,具體我忘了。一般使用企業級的Time框架Joda-Time,舉個例子:
說Java的Date處理有什麼問題的嘛,那是以前的
java.util.Date
, 現在的新包java.time
的API處理時間也是非常方便,API都是參考了很多優秀的Time框架,例如Joda-Time
,所以,要用還是用自家的API噻,哈哈,畢竟是親兒子哈哈,是不是很簡潔...比
Joda-Time
這個私生子是不是更簡潔點...簡直爽~~~嘎嘎嘎LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)
我現在是這樣寫的,不知道還有沒有更好的寫法
雷雷