在Scala中这意味着什么foreach(_ =>())?

mar*_*rla 2 scala

foreach(_ => ())在使用Monix流的代码中发现了这一点,但我不明白它的含义。有人可以解释一下吗?

monix_concurrent_subject.foreach(_ => ())

pme*_*pme 7

正如urmaul在评论中解释的那样,这取决于:

  • 如果数据结构渴望,它什么也不做。例如ListOption等。

  • 如果数据结构是惰性的,它将初始化其内容。一个示例是Stream

同样,由于foreach什么也没有返回,这意味着在之前的代码中某处将是副作用foreach

如果您检查API(ConcurrentSubject.html#foreach),则会指出:

foreachL(cb: (O) ? Unit): Task[Unit] 创建一个新任务,该任务将消耗可观察的源,并为每个元素执行给定的回调。