构造函数模式与抽取器模式匹配有什么区别? 在Scala中编程作者提出的区别作为构造图案在第15章所讨论的和在26章构造函数模式与抽取器模式匹配
构造图案的实施例的提取器图案:提取器的
abstract class Expr
case class BinOp(operator: String, left: Expr, right: Expr) extends Expr
expr match {
case BinOp("+", e, Number(0)) => println("a deep match")
case _ =>
}
实施例:
l match {
case List(a,b,c) => a
case _ =>
}
Neophytes指南并没有提到模式之间的区别。它只是表明提取器存在,并且案例类自动获取它们。另外,在规范的意义上,它并不谈论提取器,以区分具有'unapply'和case class的任意对象。 –