scala中元组成员的重新排序

时间:2017-12-18 12:46:36

标签: scala tuples

如何重新排序元组的成员?我有一个2的元组列表,如下所示

((115,vp,London,1001),(2,ZIP1,ZIP2))

我想将元组重新排序为

 ((vp,London), ( 115,1001,2,ZIP1,ZIP2) )

1 个答案:

答案 0 :(得分:2)

因此,基于您假设元组的元素出现在同一位置,您可以执行以下操作:

val tpl = Seq(((115,"vp","London",1001),(2,"ZIP1","ZIP2")))

tpl.map {
  case (elem1, elem2) => ((elem1._2, elem1._3), (elem1._1, elem1._4, elem2._1, elem2._2, elem2._3))
}

更好的方法是使用case类而不是像这样的元组!您可以将元组的元素装入案例类,然后根据需要制作地图!