我想写一个java方法,将采取一个2d数组,并将内容添加到一个新的二维数组期望指定的行。所以,如果我有二维数组从一个二维数组中删除一列java
1234
1234
1234
,我想删除第3列,我想获得
124
124
124
问题是我无法弄清楚如何得到这个工作。我能想到的最好的方法如下。
private static int[][] removeCol(int [][] array, int colRemove)
{
int row = array.length;
int col = array[0].length;
int [][] newArray = new int[row][col];
for(int i = 0; i < row; i++)
{
for(int j = 0; j < col; j++)
{
if(j != colRemove)
{
newArray[i][j] = array[i][j];
}
}
}
return newEx;
}
眼下这个方法将返回该
1204
1204
1204
但它会运行得更好,如果我能得到我想要的结果。有没有办法做到这一点,或者我坚持我目前的结果?
提示:(a)新阵列必须具有较少的列 - 比原来的更小。 (b)要删除的列后面的每个列应该位于索引处*比以前少*。因此,如果您删除第3列,则第4列中的内容现在在第3列,第5列中的内容现在在第4列等等。 – RealSkeptic