如何在Scala中创建和使用多维数组?

时间:2010-03-04 18:55:15

标签: arrays scala

如何创建多个维度的数组?

例如,我想要一个整数或双矩阵,类似于Java中的double[][]

我知道Scala 2.8中的数组发生了变化,并且旧的数组已被弃用,但现在有多种方法可以实现,如果是,哪种情况最好?

3 个答案:

答案 0 :(得分:59)

像这样:

scala> Array.ofDim[Double](2, 2, 2)
res2: Array[Array[Array[Double]]] = Array(Array(Array(0.0, 0.0), Array(0.0, 0.0)), Array(Array(0.0, 0.0), Array(0.0, 0.0)))

scala> {val (x, y) = (2, 3); Array.tabulate(x, y)( (x, y) => x + y )}
res3: Array[Array[Int]] = Array(Array(0, 1, 2), Array(1, 2, 3))

答案 1 :(得分:14)

它已被弃用。 Companion对象导出工厂方法ofDim

val cube = Array.ofDim[Float](8, 8, 8) 

答案 2 :(得分:-1)

如何在Scala中创建和使用多维数组?

var dd:Array [(Int,(Double,Double))] = Array((1,(0.0,0.0)))