我正在尝试在 scala 中列出 2 个给定日期之间的所有日期。这是我写的程序:
object testingscala
{
def main(args: Array[String])
{
println(calculateDates(LocalDate.of(2014,1,1), LocalDate.of(2014,2,5)))
}
def calculateDates(from: LocalDate, until: LocalDate): List[LocalDate] =
{
var arr = List[LocalDate]()
var dateList = calculateDatesRecur(from, until) // forward reference extends over definition of variable
dateList
def calculateDatesRecur(from: LocalDate, until: LocalDate): List[LocalDate] =
{
if (from.compareTo(until) > 1) {return arr}
else
{ arr = arr :+ from; calculateDatesRecur(from.plusDays(1), until)}
}
return dateList
}
}
我在 Scala 相对较新,所以我无法弄清楚实施有什么问题。该函数只接受两个参数并打印出两个日期之间的所有日期。我使用了递归。