Search code examples
javalocaldate

Why LocalDate.plusDays not working here?


I'm trying to split a date range into individual dates in the following way:

private static void splitDates(LocalDate dateFrom, LocalDate dateTo) {
    while (dateFrom.isBefore(dateTo) || dateFrom.isEqual(dateTo)) {
        System.out.println(dateFrom);
        dateFrom.plusDays(1L);
    }
}

And I don't know why dateFrom.plusDays(1L) is not working as the date remains still the same so the loop becomes infinite.


Solution

  • plusDays doesn't alter the original LocalDate, you have to assign the result :

    dateFrom = dateFrom.plusDays(1L);