Вам не нужно читать ваши данные в Array of Arrays - вам просто нужно преобразовать их в этот формат при подаче их в конструктор Table
- что легко, как продемонстрировал мой ответ на ваш другой вопрос: Как настроить имена столбцов в таблице Scala?
Если вы создаете 2D-массив, вам нужна идиома
val data = Array.ofDim[String](numColumms, numRows)
(тамтакже new Array[String](numColumns, numRows)
, но это устарело.)
Вы получаете доступ к элементу (i, j) массива data
с помощью data(i)(j)
(помните, что они начинаются с 0).
Нов общем, вы должны избегать изменчивых коллекций (таких как Array, ArrayBuffer), если нет веской причины.Попробуйте Vector
вместо этого.
Не зная формата, в котором вы извлекаете данные из базы данных, невозможно сказать, как поместить их в коллекцию.
Обновление :
В качестве альтернативы вы можете разместить информацию о типе слева, поэтому следующие условия эквивалентны (решите сами, какой вы предпочитаете):
val a: Array[Array[String]] = Array.ofDim(2,2)
val a = Array.ofDim[String](2,2)
Чтобы объяснить синтаксис для доступа / обновления элементов: asв Java многомерный массив - это просто массив массивов.Итак, a(i)
- это элемент i элемента a, который равен Array[String]
, и, таким образом, a(i)(j)
- элемент j этого массива, который является String
.
.