def listMatch(list:List[Int]): Unit = list match {
case a @ ((31 :: tail) :+ 4) => println(tail)
}
listMatch(List(31,1,2,3,4))
當我運行上面的結果是「列表(1,2,3)」。 所以我的問題是tail函數調用在「println(tail)」語句中引用的位置?顯然,它不是匹配值,因爲「a.tail」調用給出了另一個結果。如果此尾調用引用匹配語句的「list」開頭,則不應該導致結果爲「List(1,2,3,4)」,而是 。 「斯卡拉模式匹配引用混淆內匹配的值
我很笨,謝謝 – altayseyhan