【问题标题】:Scala List equivalent of Lodash _.thru()Scala List 等效于 Lodash _.thru()
【发布时间】:2019-07-03 18:05:24
【问题描述】:

Scala List API 有多种类似于 Lodash 的函数式方法:

我正在寻找用于链接的 Lodash .thru() 函数的 Scala 等效项,它类似于 .map() ,只是它被调用一次并将整个列表作为参数传递,而不是在列表。

【问题讨论】:

  • 和现在还不存在的|>一样吗?请参阅herehere,或者浏览this search 的结果。简而言之:不,2.12 中没有 pipe-forward,2.13 中会有,在此之前定义自己的或使用 Scalaz 的实现非常容易。

标签: javascript scala lodash seq


【解决方案1】:

Scala 2.13 引入了ChainingOps,它提供了pipe 方法,这可能是你所期望的。

import scala.util.chainingOps._ //need to be imported, to make pipe available

List(1,2,3)
   .pipe(l => 0 :: l) // List(0, 1, 2, 3)

如果您还不能使用 Scala 2.13,我会退回到模式匹配:

List(1,2,3) match {
    case l => 0 :: l
}

【讨论】:

猜你喜欢
  • 2012-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-29
  • 1970-01-01
  • 2016-08-29
  • 1970-01-01
  • 2018-04-14
相关资源
最近更新 更多