mis*_*tor 10 functional-programming scala
为什么课堂上没有跟随签名的方法PartialFunction[A, B]?
def orElse[A1 <: A, B1 >: B](that: A1 => B1): A1 => B1
Run Code Online (Sandbox Code Playgroud)
缺少这种方法背后有一些合乎逻辑的原因,还是仅仅是疏忽?
Kev*_*ght 10
因为通过提升部分功能来实现同样的目标是微不足道的
partialFunc.lift(arg) getOrElse (totalFunc(arg))
因为Scala通常试图避免过载
因为没有人想过添加它,到目前为止可能还没有
因为添加到标准库的每个方法在下游维护方面都会产生不断增长的成本