man*_*eak 4 java time date java-time
我有一个每周统计系统,我想检查统计数据最后一次更新是否是上周.如果是的话,我想清除它.
目前,日期存储在LocalDate:
LocalDate lastUpdate;
Run Code Online (Sandbox Code Playgroud)
我已经有了这样的日常统计数据:
if(lastUpdate.isBefore(LocalDate.now())
{
clearDailyStatistics();
}
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情:
if(/* something here? */)
{
clearWeeklyStatistics();
}
Run Code Online (Sandbox Code Playgroud)
所以,问题是:我如何比较LocalDate对象的周数?不需要形成周的不同"标准" - 周一到周日将被使用(如Java DayOfWeek课程已经使用的那样).
尝试使用WEEK_OF_WEEK_BASED_YEAR比较一年中的年份和周数:
LocalDate now = LocalDate.now();
if(lastUpdate.get(IsoFields.WEEK_BASED_YEAR) != now.get(IsoFields.WEEK_BASED_YEAR)
|| lastUpdate.get(IsoFields.WEEK_OF_WEEK_BASED_YEAR) !=
now.get(IsoFields.WEEK_OF_WEEK_BASED_YEAR))
Run Code Online (Sandbox Code Playgroud)