被包在花括号内的一组 case 语句是一个偏函数 - 一个并非所有输入值都有定义的函数。她是 PartialFunction[A,B]类的一个实例。(A是参数类型,B是返回类型),
该类有两个方法:Apply方法从匹配的模式计算函数值,而isDefinedAt方法在输入至少匹配其中一个模式时返回true
例如:
val f:PartialFunction[Char,Int] = {case '+' => 1;; case '-' =>-1}
f('-') //调用f.apply('-') 返回-1
f.isDefineat('0')//false
f('0' //抛出 MatchError)