0
Я пытаюсь создать функцию перекрестного произведения в Scala, где k
- это количество раз, когда я строил кросс-продукт.Scala допускает неправильный тип при использовании foldLeft
val l = List(List(1), List(2), List(3))
(1 to k).foldLeft[List[List[Int]]](l) { (acc: List[List[Int]], _) =>
for (x <- acc; y <- l)
yield x ::: l
}
Однако этот код не компилируется:
test.scala:9: error: type mismatch;
found : List[List[Any]]
required: List[List[Int]]
for (x <- acc; y <- l)
^
Почему это никогда не задумывалась у меня есть List[Any]
там? Ясно, что все, что я имею в виду, это List
s Int
s.
Argh! Это просто опечатка :(, и я смотрел на это час. Извините за то, что тратил свое время! – knub
Рад помочь :) – Noah