偏函数是scala的一个特殊函数,可以看作为是一个残缺的函数,他只能处理一部分的参数
- scala> val pf: PartialFunction[Int, Boolean] = { case i if i > 0 => i % 2 == 0}
- pf: PartialFunction[Int,Boolean] =
定义一个pf偏函数,如果i大于0,那么i是偶数的话,就返回true,否则返回false;
接下来,我们输入两个参数,看下返回结果
- scala> pf(-1)
- scala.MatchError: -1 (of class java.lang.Integer)
- at scala.PartialFunction$$anon$1.apply(PartialFunction.scala:255)
- at scala.PartialFunction$$anon$1.apply(PartialFunction.scala:253)
- at $anonfun$1.applyOrElse(
:11) - at $anonfun$1.applyOrElse(
:11) - at scala.runtime.AbstractPartial