如何在scala中制作简单的List?

时间:2015-06-06 05:31:02

标签: list scala dictionary zip

我知道zip可以将两个列表组合成一个列表,

scala> List(1, 2, 3).zip(List("4", "5", "6"))
res0: List[(Int, Int)] = List((1,4), (2,5), (3,6))
然而,' res0'不是我想要的。 我想要这个,

res0: List[Int] = List(1,4,2,5,3,6)

也许我应该使用一些' indexOF'或者' zipWithIndex' 但它看起来像一个更好的而不是好的方式'

是否有一种优雅的方式来制作像这个例子的列表?

还是我需要使用一些' IF' ?

1 个答案:

答案 0 :(得分:6)

我认为你想要交错两个列表,也假设两个列表都是相同的类型。如果是这样的话,这应该对你有用

List(1,2,3) zip List(4,5,6) flatMap {case (x,y) => List(x,y)}

输出将是

res0: List[Int] = List(1, 4, 2, 5, 3, 6)