How to create a list of dates between a start and end date in Scala

1 Answer

0 votes
import java.time.{LocalDate, Period}

object DateRangeExample {

  def generateDates(start: LocalDate, end: LocalDate): List[LocalDate] = {
    if (start.isAfter(end)) return Nil

    Iterator
      .iterate(start)(_.plusDays(1))
      .takeWhile(!_.isAfter(end))
      .toList
  }

  def main(args: Array[String]): Unit = {
    val start = LocalDate.of(2026, 1, 3)
    val end   = LocalDate.of(2026, 1, 12)

    val dates = generateDates(start, end)

    println(s"Generated ${dates.size} dates:")
    dates.foreach(d => println(d.toString))
  }
}
 
  
  
  
/*
run:
  
Generated 10 dates:
2026-01-03
2026-01-04
2026-01-05
2026-01-06
2026-01-07
2026-01-08
2026-01-09
2026-01-10
2026-01-11
2026-01-12
  
*/

 

 



answered Jan 31 by avibootz
...