【问题标题】:how can make simple List in scala?如何在scala中制作简单的列表?
【发布时间】:2015-06-06 05:31:02
【问题描述】:

我知道 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'吗?

【问题讨论】:

  • List(1, 2, 3) zip List("4", "5", "6") flatMap (x => List(x._1, x._2.toInt)) 也可以完成这项工作。

标签: list scala dictionary zip


【解决方案1】:

我认为您想将两个列表交错,同时假设两个列表属于同一类型。如果是这样的话,这应该适合你

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)

【讨论】:

    猜你喜欢
    • 2019-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多