来源于 scala 编程 中文版 第三版。
用花括号包起来的一系列case (即可选分支,case 序列) 可以用在任何允许出现函数字面量的地方,本质上讲,case 序列是一个函数字面量。
普通函数:只有一个入口和参数列表。
case 序列: 可以有多个入口,每个入口都有自己的参数列表。每个case 对应该函数的一个入口,而该入口的参数列表用模式来指定,每个入口的逻辑主体是case右边的部分。
{case 序列} 翻译成偏函数还是全函数看函数字面量声明的类型。如果1)声明的类型是PartialFuntion, 就会翻译成偏函数,并生成apply 、isDefaultAt 方法。如果2)声明的是Funtional1 或者没有声明,是一个全函数。