我有两个变量:
-
startDate
- 例如 2018 年 4 月 29 日
-
howManyDays
- 例如 30
我想要获取自 2018 年 4 月 29 日起 30 天的列表。你能告诉我该怎么做吗?我发现两个日期之间只有几天。
int days = Days.daysBetween(startDate, endDate).getDays();
List<LocalDate> dates = new ArrayList<LocalDate>(days); // Set initial capacity to `days`.
for (int i=0; i < days; i++) {
LocalDate d = startDate.withFieldAdded(DurationFieldType.days(), i);
dates.add(d);
}
我不知道如何更改代码。
您可以使用此示例代码获取从特定日期开始的 30 个日期。
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
public class Days {
public static void main(String[] args) {
String startDate = "29/04/2018";
int howManyDays = 30;
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate localDate = LocalDate.parse(startDate, formatter);
List<LocalDate> dates = new ArrayList<>();
for (int i = 0; i < howManyDays; i++) {
dates.add(localDate.plusDays(i));
}
//For check
dates.forEach(System.out::println);
}
}
运行与howManyDays=5
gives:
2018-04-29
2018-04-30
2018-05-01
2018-05-02
2018-05-03
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)