如何使用scala组合两个列表?

前端之家收集整理的这篇文章主要介绍了如何使用scala组合两个列表?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下列表 –

val A = List(("A","B","C","D"),("A1","B1","C1","D1"),("A2","B2","C2","D2"))

val B = List(("P","Q","R","S","T"),("P1","Q1","R1","S1","T1"),("P2","Q2","R2","S2","T2"),("P3","Q3","R3","S3","T3"))

我想将列表A的第一个元素与列表B的第一个元素合并,依此类推.
这里列表A有3个元素,B有4个.我想在合并时考虑列表A中的元素数量.

输出如下

val combineList = List(("A","D","P","D1","P1","D2","P2","T2"))

解决方法

如果你可以使用无形,那么你可以简单地做

scala> import shapeless.Syntax.std.tuple._
scala> A.zip(B).map{case(a,b) => a ++ b}
res1: List[(String,String,String)] = List((A,B,C,D,P,Q,R,S,T),(A1,B1,C1,D1,P1,Q1,R1,S1,T1),(A2,B2,C2,D2,P2,Q2,R2,S2,T2))

它将适用于任意大小的元组.

猜你在找的Scala相关文章