如何将列表中的每两个元素打包到 Scala 中的元组?
How to pack each two elements in a list to tuple in scala?
输入:
val input = List(1, 3, 6, 7, 12)
输出将是:
val output = List((1, 3), (3, 6), (6, 7), (7, 12))
input.zip(input.tail)
呢?
你可以使用 s 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))
输入:
val input = List(1, 3, 6, 7, 12)
输出将是:
val output = List((1, 3), (3, 6), (6, 7), (7, 12))
input.zip(input.tail)
呢?
你可以使用 s 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))