2

ケースクラスタプルのリストをシーケンスのタプルに変換し、結果を複数代入しようとして、ここで立ち往生しました。

val items = repo.foo.list // gives me a List[(A,B)]

次のようにマルチ割り当てを実行できます。

val(a,b) = (items.map(_._1).toSeq, items.map(_._2).toSeq)

ただし、次の行に沿って、1 ステップで実行する方が適切です。

val(a,b) = repo.foo.list.map{case(a,b) => (a,b)}
4

2 に答える 2

6

質問を正しく理解できたかどうかわかりません。多分unzipあなたが望むもののために働くでしょうか?

ここにいくつかの例のリンクがあります: http://daily-scala.blogspot.de/2010/03/unzip.html

于 2012-10-22T07:47:31.087 に答える