Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 序列[Tuple2]上的多重赋值_Scala_Collections_Tuples_Variable Assignment - Fatal编程技术网

Scala 序列[Tuple2]上的多重赋值

Scala 序列[Tuple2]上的多重赋值,scala,collections,tuples,variable-assignment,Scala,Collections,Tuples,Variable Assignment,在这里挥舞似乎很简单 有一个Seq[Tuple2[a,B]],称之为foo,我想将Tuple2提取到一个(Seq[a],Seq[B])中,我可以对其执行一站式多任务 val(a,b) = foo ?? 尝试了map、flatmap和其他失败的变体 如果你愿意,就把灯打开;-) 尝试解压 文档指定它为 def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Seq[A1], Seq[A2]) 所以你可以说val(a,b)=foo.unzip 要

在这里挥舞似乎很简单

有一个
Seq[Tuple2[a,B]]
,称之为foo,我想将
Tuple2
提取到一个
(Seq[a],Seq[B])
中,我可以对其执行一站式多任务

val(a,b) = foo ??
尝试了map、flatmap和其他失败的变体


如果你愿意,就把灯打开;-)

尝试
解压

文档指定它为

def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Seq[A1], Seq[A2])
所以你可以说
val(a,b)=foo.unzip


要走另一条路(从
x:Seq[A]
y:Seq[B]
z:Seq[(A,B)]
,您可以使用
val z=x.zip(y)

简单的东西;-)谢谢,能够以比“Foo(seq.map(.\u 1)、seq.map(.\u 2))”更有意义的方式分解嵌套表单映射真的很有用,不客气!你只要喜欢Scala的标准库:D