如何从2D Java数组中获取列?

2022-09-01 23:48:54

我知道2d数组是数组的数组。要获取行,您可以执行以下操作:

rowArray = my2Darray[row]

由于每行可以有不同的大小,因此我假设它不是内置的,以便从2D数组中获取列。这让我相信你必须做这样的事情:

for(int row = 0; row < numRows; row++)
{
    colArray[row] = m2Darray[row][columnOfInterest];
}

这是正确的吗?这是唯一的出路吗?


答案 1

如果您被锁定为使用2d数组,那么是的,这就是afaik。但是,一个可能对您有帮助的建议(如果可能的话):

将数组包装在处理列读取的类中。

祝你好运。


答案 2

Commons math有一些你可能想要查看的工具:

double[][] data = new double[10][10];
BigMatrix matrix = MatrixUtils.createBigMatrix(data);
matrix.getColumnAsDoubleArray(0);

共享资源数学图书馆