gpt4 book ai didi

java - 如何在 Java 中按周映射日期?

转载 作者:行者123 更新时间:2023-12-01 09:07:31 25 4
gpt4 key购买 nike

我有一个对象列表,想按周数映射它们。

我看过类似的东西

private static int getWeekOfYear(LocalDate date) {
WeekFields wf = WeekFields.of(Locale.getDefault());
return date.get(wf.weekOfYear());
}

问题是我不想按一年中的第几周来执行此操作。

我想要一个Map<Integer, List<DTO>> Integers在哪里将是 1, 2, 3, ...

我已经对原始 List<DTO> 进行了排序按日期然后我可以获得第一个 DTO.getDate()以确定第 1 周何时开始。

然后我的问题是遍历 DTO's并确定每个人将在哪个周数。我觉得我必须找到星期几,然后计算出下周开始前的天数,例如如果第一个日期是星期三,则第 2 周将在 5 天后开始,随后的每个星期将再增加 7 天。

我真的很难找到一种写这篇文章的好方法。所以我想知道是否有人能想出创建此 Map 的好方法?

谢谢

最佳答案

基本上你想研究新的 Java8 date/time在日期上进行此类计算时的 API。

然后请注意:您确定要在此处使用 map 吗?如果我输入正确,你说这些键会运行 1、2、3,... 无论如何?所以 - 当您知道键只是一个数字序列时,为什么不使用列表呢?

另一种选择是使用 TreeSet 和自定义 比较器。如果您使用比较器根据日期排序您的 DTO 对象,TreeSet 会自动将它们放入正确的顺序!

关于java - 如何在 Java 中按周映射日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40462132/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com