во вложенном List, используя только pattern matching?
List(1,...) => 1
List(List(List(5,...)), ...) => 5
вот моя попытка:
def f[A](x:List[Any]):A = x match {case y::ys => f(y); case v:A => v}
задача появилась при решение задачи 7 в Ninety-Nine Scala Problems - но там в ответе просто flatMap используется, а хотелось бы понять как это заимплементировать на "низком уровне".
Пока что проблема в том, что аргумент функции - либо List[A] либо value типа A
А чё там не(A, list*) ?
Обсуждают сегодня