JAVA 用LocalDate怎么獲取上個禮拜的禮拜一和禮拜日的時間
問題描述
如題,比如今天是2017.6.21 我怎么得到上個禮拜的禮拜一2017-06-12
問題解答
回答1:謝邀。
我記得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);回答2:
說Java的Date處理有什么問題的嘛,那是以前的java.util.Date, 現在的新包java.time的API處理時間也是非常方便,API都是參考了很多優秀的Time框架,例如Joda-Time,所以,要用還是用自家的API噻,哈哈,畢竟是親兒子
LocalDate newLocalDate = LocalDate.of(2017, 6, 21).minusWeeks(1l) .with(DayOfWeek.MONDAY);
哈哈,是不是很簡潔...比Joda-Time這個私生子是不是更簡潔點...簡直爽~~~嘎嘎嘎
回答3:LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)我現在是這樣寫的,不知道還有沒有更好的寫法
回答4:public static void getLastMonday(){LocalDate local = LocalDate.now();//獲取當前時間DayOfWeek dayOfWeek = local.getDayOfWeek();//獲取今天是周幾LocalDate lastMonday = local.minusDays(7+dayOfWeek.getValue()-1);//算出上周一 }
相關文章:
1. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?2. docker-machine添加一個已有的docker主機問題3. golang - 用IDE看docker源碼時的小問題4. docker綁定了nginx端口 外部訪問不到5. docker - 如何修改運行中容器的配置6. docker網絡端口映射,沒有方便點的操作方法么?7. node.js - nodejs debug問題8. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????9. debian - docker依賴的aufs-tools源碼哪里可以找到啊?10. docker-compose中volumes的問題
