Java如何根据一个时间,得到这个时间所在的这一周的周日?
PHPz
PHPz 2017-04-18 09:57:05
0
3
608

比如给一个时间 2016-09-06(周二)就能得到2016-09-04(2016-09-06这一周的周日)

PHPz
PHPz

学习是最好的投资!

全部回覆(3)
黄舟

雷雷

迷茫

雷雷

迷茫

建議用Java8的新時間API,操作起來比較方便

LocalDate localDate = LocalDate.parse("2016-09-15");
LocalDate nextSunday = localDate.with(TemporalAdjusters.next(DayOfWeek.SUNDAY));

就這麼簡單...沒有以前老Date API那么麻烦,可能还要try catch,或者判斷很多種情況,很多情況交給JDK自己去處理吧,現在已經封裝好了方法

對於這種封裝好了的方法,可以說Java8作為Java最新版本,已經把Java以前的命令式風格融入了聲明式風格,代碼讀取來也更易讀了,localDate.with就是新时间API定义的时间抽象类Temporalwith方法,参数就是一个调整TemporalAdjuster接口,代表了当前对象可以根据这个具体的调整器来调整当前对象,TemporalAdjusters.next就是生成了一个调整器,调整星期的...表示下一个,参数传的DayOfWeek.SUNDAY,表示是周日

因此完整連起來讀localDate.with(TemporalAdjusters.next(DayOfWeek.SUNDAY));这段代码就真的很容易了,所见即所得,把当前时间localDate按照調整器(下一個週日)進行調整併返回

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板