Scala具有功能应用程序操作员



f#具有管道运算符:

arg |> func // or arg2 |> func arg1, as opposed to func arg1 arg2
func <| arg

Haskell具有$操作员:

func $ arg -- or func1 $ func2 arg, as opposed to func1 (func2 arg)

它们主要用于通过拆开函数调用来提高可读性。

Scala中是否有类似的操作员?

没有。但是,您可以轻松地定义自己的。

implicit class PipeEverything[A](val underlying: A) extends AnyVal {
  def |>[B](f: A => B) = f(underlying)
}

scala在标准库中没有此操作员。

Scalaz带来鹅口疮操作员:

arg |> method

如果您更喜欢猫而不是Scalaz,则需要鼠标伴侣库来获取相同的操作员。

最新更新