我需要实现一个带有元组的泛型方法并返回一个Map示例:
val tuple=((1,2),(("A","B"),("C",3)),4)
Run Code Online (Sandbox Code Playgroud)
我一直试图将这个元组分解为一个列表:
val list=tuple.productIterator.toList
Scala>list: List[Any] = List((1,2), ((A,B),(C,3)), 4)
Run Code Online (Sandbox Code Playgroud)
但这种方式会返回List [Any].
我现在正在尝试找出如何迭代以下元组,例如:
((1,2),(("A","B"),("C",3)),4)
Run Code Online (Sandbox Code Playgroud)
为了遍历每个元素1,2,"A",B",...等.我怎么能在元组上进行这种迭代
Pet*_*itz 15
关于什么?:
def flatProduct(t: Product): Iterator[Any] = t.productIterator.flatMap {
case p: Product => flatProduct(p)
case x => Iterator(x)
}
val tuple = ((1,2),(("A","B"),("C",3)),4)
flatProduct(tuple).mkString(",") // 1,2,A,B,C,3,4
Run Code Online (Sandbox Code Playgroud)
好吧,Any
问题仍然存在.至少这是由于返回类型productIterator
.