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, которые мне здесь нужны, используя List of Lists?


person Mantas Marcinkus    schedule 22.05.2013    source источник
comment
Что вы используете для преобразования списка в несколько массивов?   -  person user    schedule 22.05.2013
comment
Как это сделать? Я предлагаю, пытаясь сделать это. Когда вы это сделаете, покажите нам, что вы пробовали   -  person Marco Forberg    schedule 22.05.2013
comment
Я пытался использовать что-то вроде double[][] array = list.toArray(new double[list.size()][]);   -  person Mantas Marcinkus    schedule 22.05.2013


Ответы (1)


В Guava есть класс Double, который имеет 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));
}
person John B    schedule 22.05.2013
comment
Это не работает, double[][] myArray = new double[myList.size()]; отсутствует измерение, и после исправления этот метод myArray[i] = myList.get(i).toArray(new double[0]); toArray здесь не работает. - person Mantas Marcinkus; 22.05.2013
comment
Извините, обновлено выше относительно создания массива. Что вы имеете в виду под не работает здесь? В чем ошибка? - person John B; 22.05.2013
comment
The method toArray(T[]) in the type List<Double> is not applicable for the arguments (double[]) Это ошибка, которую я получаю. - person Mantas Marcinkus; 22.05.2013