List<List <Double >> для удвоения [][] для JAMA или других библиотек
Я не могу заставить мой список> удвоить [] [] для работы с пакетом линейной алгебры, таким как JAMA. В основном у меня есть какой-то список с такими координатами:
[[2.63, 11.087, -12.054],
[2.357, 13.026, -15.29],
[1.365, 16.691, -15.389],
[0.262, 18.241, -18.694]]
И я пытаюсь поместить эти координаты в класс JAMA, который является двойным [] []. Я пытался использовать метод toArray, но мне не удалось.
double[][] array = list.toArray(new double[list.size()][]);
Как это сделать? Или есть другие пакеты, чтобы справиться с SVD, которые мне нужны здесь, используя список списков?
1 ответ
Решение
Гуава имеет класс Doubles, который имеет toArray
это занимает Collection<? extends Number>
и тем самым возьму List<Double>
и преобразовать в массив. Так...
List<List<Double>> myList;
double[][] myArray = new double[myList.size()][];
for (int i=0, n<myList.size(); i<n; i++){
myArray[i] = Doubles.toArray(myList.get(i));
}