当我在这里浏览答案时,我读到了
“ Java没有真正的二维数组;它具有
数组,因此x [rows] [cols]是cols元素的行数组x
(即x [rows]是一个数组数组)。”
这对我来说似乎是个好消息,因为我想通过从2D阵列复制“行”来创建一个1D阵列。从2D数组P中调用特定数组的正确语法是什么?实质上:
new double[] row1 = P[row];
还是我必须遍历要复制的行?我已经尝试了上面的代码和几种类似的方法。所有这些都收到“缺少数组维”的错误。
最佳答案
如果要引用行,可以使用double[] selectedRow = P[rowToSelect]
。代码中的new
关键字放错了位置。如果您想要真实副本或更好地称为深层副本,则可以使用:
double[] selectedRow = new double[P[rowToSelect].length];
System.arraycopy(P[rowToSelect], 0, selectedRow, 0, P[rowToSelect].length);`
关于java - Java:从2D阵列复制单个阵列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40451449/