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

Scala 如何将两个Seq[String],Seq[Double]合并到Seq[(String,Double)],scala,seq,Scala,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就可以将列表[Tuple[String,Int]转换为映射[String,Int] scala> val seq1 = List("

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

a->[“a”、“b”、“c”]
b->[1,2,3]

我想将输出创建为

[("a",1),("b",2),("c",3)]
我有密码
a.zip(b)
实际上是在创建这两个元素的序列,而不是创建映射


有人能建议如何在scala中实现这一点吗?

您只需要
.toMap
就可以将
列表[Tuple[String,Int]
转换为
映射[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)
也看到

您只需
.toMap
即可将
列表[Tuple[String,Int]]
转换为
映射[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.zip(b).toMap
a.zip(b).toMap