Scala 模式匹配全解析
1. 模式匹配基础
模式匹配是 Scala 中一项非常强大的功能,它允许我们根据不同的模式对表达式进行匹配和处理。以下是一个简单的模式匹配示例:
expr match {
case BinOp(op, left, right) =>
println(expr + " is a binary operation")
case _ =>
}
在这个例子中,我们使用 match
关键字对 expr
进行模式匹配。如果 expr
是 BinOp
类型的对象,就打印它是一个二元操作;如果不是,则不做任何处理。这里的 _
是通配符模式,它可以匹配任何对象。
2. 不同类型的模式
2.1 通配符模式
通配符模式用 _
表示,它可以匹配任何对象。通配符模式常用于作为默认情况,捕获所有未被其他模式匹配的情况。例如:
expr match {
case BinOp(_, _, _) => println(expr + " is a binary operation")
case _ => println("It's something else")
}
在这个例子中,我们使用通配符模式忽略