这是来自scalaz的关于cata函数的description。但是使用这个功能的目的是什么?顺便说一下scalaz的scaladoc有描述,而不仅仅是代码。
答案 0 :(得分:1)
它与fold
上的scala.Option
相同:它允许您将has-a-value分支和空分支映射到单个结果值。您可能会看到的任何地方
Option(x) match {
case Some(y) => f(y)
case None => y0
}
您可以在fold
上使用Option
或在scalaz上使用cata
'变种而已。
(注意:对于这种特殊情况,模式匹配通常更有效,但并不总是更方便。)