List(1,2) match {
case List(1,_) => println("1 in postion 1")
case _ => println("default")
}
kompiluje/działa dobrze. WięcScala lista mecz
List(1) match ...
List(3,4,5) match ...
ale nie
List() match ...
co prowadzi do następującego błędu
found : Int(1)
required : Nothing
case List(1,_) => println("1 in postion 1")
Dlaczego List() starają się dopasować listy (1, _)?
Oznacza to, że 'List [Int]' jest zgodny z 'List [Nothing]', ale odwrotnie nie jest to możliwe. – missingfaktor