Ввод:
val input = List(1, 3, 6, 7, 12)
Вывод будет:
val output = List((1, 3), (3, 6), (6, 7), (7, 12))
А как же input.zip(input.tail)?
input.zip(input.tail)
Вы можете использовать s sliding:
sliding
output.sliding(2, 1).map(l => (l(0), l(1))).toList
или:
output.sliding(2, 1).map { case List(a, b) => (a, b) }.toList
Вы можете сделать это так:
input.sliding(2).toList.map(l => (l.head, l.tail.head))