在Scala中将任何类型的数组包装为数组类型

use*_*629 2 arrays scala apache-spark

我有一个 Any 类型的 WrappedArray 值。我如何转换为数组。

例如:

val flds = valArr(0)(2)
flds: Any = WrappedArray(F1,F2,F3,F4,F5)
Run Code Online (Sandbox Code Playgroud)

我尝试将 flds 转换为 String Array ..

val flds = valArr(0)(2).toArray
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误

<console>:41: error: value toArray is not a member of Any
Run Code Online (Sandbox Code Playgroud)

我如何转换..?我只是想遍历wrappedArray,但我不知道该怎么做..这就是为什么我试图将其转换为数组并遍历它。

Dmy*_*tin 5

这是如何获得WrappedArrayArray反之亦然:

val warr: WrappedArray[Int] = WrappedArray.make(Array(1, 2, 3))
val arr: Array[Int] = warr.array
Run Code Online (Sandbox Code Playgroud)

或者

val warr: WrappedArray[Int] = Array(1, 2, 3) // implicit conversion
val arr: Array[Int] = warr.array
Run Code Online (Sandbox Code Playgroud)