如何检索过去 90 天的星期五日期?
Posted
技术标签:
【中文标题】如何检索过去 90 天的星期五日期?【英文标题】:How to retrieve last 90 days friday dates? 【发布时间】:2016-12-03 18:07:45 【问题描述】:我想在下拉列表中显示过去 90 天的所有周结束日期。
【问题讨论】:
c#/SQL/Jquery 中需要的输出? 你尝试了什么?? 阅读本文 (***.com/help/how-to-ask) 【参考方案1】:只是给您一个想法(因为您标记了 JAVA),在 JAVA 中,这可以使用 Date API 来完成。对于测试,我只检查了 5 周,你可以一直到 90 周。请注意,这提供了一个想法,是否可以优化,可能是的
public static void main(String[] args)
try
LocalDateTime localDateTime = LocalDate.now().atStartOfDay();
DayOfWeek dotw = localDateTime.getDayOfWeek();
String dayOfTheWeek = dotw.name();
for (int daysOfTheWeek = 1; daysOfTheWeek < 7; daysOfTheWeek++)
if (dayOfTheWeek.equals(DayOfWeek.FRIDAY.name()))
break;
else
localDateTime = LocalDate.now().atStartOfDay().minusDays(daysOfTheWeek);
dotw = localDateTime.getDayOfWeek();
dayOfTheWeek = dotw.name();
ArrayList<LocalDate> localDates = new ArrayList<LocalDate>();
for (int weekCount = 0; weekCount < 5; weekCount++)
localDates.add(localDateTime.minusWeeks(weekCount).toLocalDate());
System.out.println(localDates);
catch (final Throwable t)
t.printStackTrace();
【讨论】:
仅供参考,您可以通过多种方式改进您的代码:不需要 LocalDateTime(一个 LocalDate 就足够了);使用时间调整器(例如:previousOrSame 无需循环即可获得前一个 FRIDAY)。例如:ideone.com/MRWBxj 感谢@assylias,通过那个 sn-p 学到了一两件事。谢谢阿金以上是关于如何检索过去 90 天的星期五日期?的主要内容,如果未能解决你的问题,请参考以下文章