如何从 Jama Matrix 对象转换为 double[][] - Java

How to convert from Jama Matrix object to double[][] - Java

我有一个来自包 JAMA 的对象 Matrix,我在其中存储了一个 double[][] 数组。我想 return 方法 Matrix.inverse() 的值。

如何将值从 Matrix 对象传递到 double[][] 数组?

double K[][] = {{1,5,3,4} , {1,10,4,3} , {1,40,232,4} , {32,434,23,5}};
Matrix GetInverse = new Matrix(K);

double returnValues[][] = GetInverse.inverse(); // ---?----

如果不了解 Matrix class 本身,就很难知道如何回答这个问题。最好的方法可能是在 Matrix class 中编写一个 toDoubleArray() 方法,其操作方式类似于 toArray() 方法字词 [=] 32=]es 实现了 List(其中 return 一个 Object[])。

它可能就像 return 存储在 Matrix 实例中的内部 double[][] 一样简单。

由于您的编辑说明您正在使用 JAMA class,您可以简单地这样做:

double returnValues[][] = GetInverse.inverse().getArray();

因为您没有保留对反向 Matrix 对象的引用,所以这是安全的。不过,一般来说,为了安全起见,您不应直接访问内部数组,而应使用 getArrayCopy() 而不是 getArray().