基本語法
Scala 有一種特殊型別的函式,稱為部分函式 ,它擴充套件了普通函式 - 這意味著 PartialFunction
例項可以在任何預期的 Function1
中使用。可以使用也用於模式匹配的 case
語法匿名定義部分函式 :
val pf: PartialFunction[Boolean, Int] = {
case true => 7
}
pf.isDefinedAt(true) // returns true
pf(true) // returns 7
pf.isDefinedAt(false) // returns false
pf(false) // throws scala.MatchError: false (of class java.lang.Boolean)
如示例所示,不需要在其第一個引數的整個域上定義部分函式。標準 Function1
例項假定為 total ,這意味著它是為每個可能的引數定義的。