天天看点

话说模式匹配(7) 一个构造器模式的例子(by case class)

scala里的list是个典型的很适用模式匹配的结构,它的接口和数据定义非常凝练。现在我们假设需要一个与list结构正好相反的结构mylist。

list由2部分组成,[head, tail],其中的head是元素本身,而tail则是list类型,也就是一种递归结构。

mylist也由2部分组成 [init, last],其中last是元素本身,而init则是mylist类型。(与list正好颠倒)

构造一下看看:

为了方便构造,还可以给mylist添加一个工厂方法:

eg: