如何在java中清除2d数组以及如何备份我的2d数组?

时间:2016-04-19 12:55:25

标签: java arrays

我想备份我的2d数组,有什么方法可以做到这一点?以及如何删除数组的所有元素?

df1 <- structure(list(Col = c("HG.1T.1", "HG.1T", "HG.1T.2", "HG.1T.3", 
"HG.1T.5", "HG.1T.11")), .Names = "Col", class = "data.frame",
row.names = c(NA, -6L))

3 个答案:

答案 0 :(得分:1)

你可以通过循环在数组上清除数组,并将每个元素设置为null。

对于字符串案例:

for( int i = 0; i < arryNumbers.length; i++ )
   Arrays.fill( arryNumbers[i], null );

对于int Case:

for (int row = 0; row < ROW.length; row++) {
   for (int col = 0; col < COL.length; col++) {
      arry[row][col] = 0;
   }
}

通过获取阵列的(深层复制)来进行备份。

深拷贝代码:

public int[][] copy(int[][] input) {
      int[][] target = new int[input.length][];
      for (int i=0; i <input.length; i++) {
        target[i] = Arrays.copyOf(input[i], input[i].length);
      }
      return target;
}

答案 1 :(得分:1)

进行备份:arrayNumbers.clone();

要删除所有元素,我想你应该自己使用“for”循环语句。 (或者将其设置为null并再次实例化)

答案 2 :(得分:0)

可能不是您正在寻找的东西,但可能以最快的方式完成您的要求:

int[][] newArray = oldArray;
oldArray=new int[4][5];

这是实现您所描述内容的最快方式。请注意,初始化新数组会将值设置为&#39; 0&#39;在int或&#39; null&#39;的情况下在对象的情况下。

PS。如果旧oldArray不对称,那么您可以迭代并初始化每个&#34;行&#34;独立地