/ / Jak stworzyć i używać wielowymiarowej tablicy w Scali? - tablice, scala

Jak stworzyć wielowymiarową tablicę w Scali? - tablice, scala

Jak utworzyć tablicę wielu wymiarów?

Na przykład chcę mieć całkowitą lub podwójną macierz, coś w tym stylu double[][] w Javie.

Wiem na pewno, że tablice zmieniły się w Scali 2.8 i że stare tablice są przestarzałe, ale czy jest wiele sposobów, aby to zrobić teraz i jeśli tak, to co jest najlepsze?

Odpowiedzi:

59 dla odpowiedzi № 1

Tak jak w przypadku:

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))

14 dla odpowiedzi № 2

To jest przestarzałe. Metody eksportowania obiektu Companion ofDim:

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