//@是為了給模式匹配起個變量名,一般格式為:variableName@pattern,示例:
object VariableTest {
def main(args: Array[String]): Unit = { val list = List(1, 2, 3, 4, 5, 6) list match { //right其實就代表了一個集合,元素為3,4,5,6
case List(_, _, right@_*) => println(right) case _ => } list match { //這種寫法錯誤 //case l:List(_, _, _*) => println(right) //正確寫法,下面兩種輸出結果一致
case list@List(_, _, _*) => println(list) case list: List[_] => println(list) } } }