val l = List(1,2,3)
val s = l match {
case list @ List(1, _*) => s"a start value is 1 list :$list"
case list : List[_] => s"a start value not 1 list"
}
看书上说是为了取出模式匹配后对应的原来输入值,例如上面例子中的模式匹配是为了匹配1开始的列表,如果写成case x: List(1, _*)
是无法编译通过的,而写成@则可以编译通过并将值赋予list