斯卡拉。 foreach 在一个元素中的日期列表
Scala. foreach in one element Lists of Dates
我想创建一个在单个日期或一段时间内有效的函数。为此,我制作了一个字符串列表,如下所示:
import com.github.nscala_time.time.Imports._
val fromDate = "2015-10-15".toLocalDate
val toDate = "2015-10-15".toLocalDate
val days = Iterator.iterate(fromDate)(_ + 1.day).takeWhile(_ <= toDate).map(_.toString)
现在我想访问天内容:
scala> days.foreach(println)
2015-10-15
scala> days.foreach(day => println(day))
对于第一个 foreach,我得到了 days 列表中的唯一元素,但是对于第二个,我什么也得不到。这只是一个示例,但我需要使用第二种形式,因为我需要在函数内部使用日值。
如果我使用一个范围,这两种方法都可以正常工作...
有人知道为什么会出现这种行为吗?
提前致谢!
P.D。我不想使用其他方法来创建字符串列表(除非我找不到解决方案)
第二个函数的工作方式与第一个相同。
您已经创建了 Iterator
对象,您只能迭代一次。
为了能够多次使用它,只需将迭代器转换为列表即可。
val daysL = days.toList
我想创建一个在单个日期或一段时间内有效的函数。为此,我制作了一个字符串列表,如下所示:
import com.github.nscala_time.time.Imports._
val fromDate = "2015-10-15".toLocalDate
val toDate = "2015-10-15".toLocalDate
val days = Iterator.iterate(fromDate)(_ + 1.day).takeWhile(_ <= toDate).map(_.toString)
现在我想访问天内容:
scala> days.foreach(println)
2015-10-15
scala> days.foreach(day => println(day))
对于第一个 foreach,我得到了 days 列表中的唯一元素,但是对于第二个,我什么也得不到。这只是一个示例,但我需要使用第二种形式,因为我需要在函数内部使用日值。
如果我使用一个范围,这两种方法都可以正常工作...
有人知道为什么会出现这种行为吗?
提前致谢!
P.D。我不想使用其他方法来创建字符串列表(除非我找不到解决方案)
第二个函数的工作方式与第一个相同。
您已经创建了 Iterator
对象,您只能迭代一次。
为了能够多次使用它,只需将迭代器转换为列表即可。
val daysL = days.toList