我如何将元组列表List[(A,B)]
转换为列表元组(List[A], List[B])
?
我尝试了以下方法,但感觉很粗糙,希望有更好的方法。
val flat: List[AnyRef] = aAndB.map{ x =>
x.map(y => List(y._1, y._2))
}.flatMap(x => x)
val typeA: List[A] = flat.filter {
case x: A => true
case _ => false
}.map(_.asInstanceOf[A])
val typeB: List[B] = flat.filter {
case x: B => true
case _ => false
}.map(_.asInstanceOf[B])