如何将两个 Seq[String], Seq[Double ] 合并到 Seq[(String,Double)]



我有两个Seq。 一个有Seq[String],另一个有Seq[(String,Double)]

a -> ["a","b","c"]b-> [1,2,3]

我想将输出创建为

[("a",1),("b",2),("c",3)]

我有一个代码a.zip(b)实际上是创建这两个元素的序列,而不是创建映射

谁能建议如何在 scala 中做到这一点?

>你只需要.toMap就可以List[Tuple[String, Int]]转换为Map[String, Int]

scala> val seq1 = List("a", "b", "c")
seq1: List[String] = List(a, b, c)
scala> val seq2 = List(1, 2, 3)
seq2: List[Int] = List(1, 2, 3)
scala> seq1.zip(seq2)
res0: List[(String, Int)] = List((a,1), (b,2), (c,3))
scala> seq1.zip(seq2).toMap
res1: scala.collection.immutable.Map[String,Int] = Map(a -> 1, b -> 2, c -> 3)

另请参阅

如何使用 A 的值作为映射中的键将 Seq[A] 转换为地图 [Int, A]?

最新更新