Я должен найти, если элемент находится внутри списка, используя scala, и мне разрешено использовать рекурсию. Почему следующий код не работает, поскольку выражение соответствия мне кажется правильным. Моя IDE дает мне ошибку во всех трех случаях и говорит, что тип, mistmatch, boolean требуется.Почему это совпадение не разрешено в scala?
def isInN(x: Int, l: List[Int]): Boolean = (l,l.head) match {
case Nil,_ => false
case _,x => true
case _,_ => isInN (x,l.tail)
}
You должен объяснить обратные кавычки, добавленные вами вокруг 'x' – Dimitri
@ Dimitri, обратные кавычки там, поэтому' scalac' рассматривает его как 'x', который был указан как параметр, а не как новая переменная. – bb94