scala-将长数据类型的元组转换为数组[long]

scala-将长数据类型的元组转换为数组[long],scala,Scala,我从spark到scala变量得到数据帧列的计数,如下所示 scala> col_counts res38: (Long, Long, Long) = (3,3,0) scala> 现在,我想把它转换成数组(3,3,0)。我正在做一个迂回的方式,就像 scala> col_counts.toString.replaceAll("""\)|\(""","").split(",") res47: Array[String] = Array(3, 3, 0) scala>

我从spark到scala变量得到数据帧列的计数,如下所示

scala> col_counts
res38: (Long, Long, Long) = (3,3,0)

scala>
现在,我想把它转换成数组(3,3,0)。我正在做一个迂回的方式,就像

scala> col_counts.toString.replaceAll("""\)|\(""","").split(",")
res47: Array[String] = Array(3, 3, 0)

scala>
但它看起来很丑。有没有一种优雅的方式可以得到它?我正在寻找一个通用的解决方案,将任意n长的元组转换为数组

您可以这样做:

val tuple :(Long,Long,Long) = (3,3,0)
tuple.productIterator.toArray

结果是
数组[Any]
。不太有用。要想把
长的
拿回来,你必须投下。很少推荐。