1

我无法让我的 List> 加倍 [][] 来处理像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?

4

1 回答 1

2

Guava 有一个Doubles类,它有一个带有 atoArray的 a Collection<? extends Number>,因此将采用 aList<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));
}
于 2013-05-22T10:52:59.620 回答