How to copy an array

@Lexyth, @Jakub : I haven’t explored the java methods yet, but arrayCopy() doesn’t seem to work on 2-d arrays. Does anyone know why this is?

void setup(){
  int[][] array1 = new int[2][5];
  //  initialize array1  
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      array1[i][j] = int(random(2*5));
    }
  }
  
  int[][] array2 = new int[2][5];  
  //  initialize array2  
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      array2[i][j] = int(random(2*5));
    }
  }

  println("array1 and array2 both initialized:");
  //  print both arrays
  print("array1: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array1[i][j] + " ");
    }
  }  println();
  print("array2: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array2[i][j] + " ");
    }
  }  println();
  println();

  //  arrayCopy() links array1 and array2!
  println("copy array1 to array2:");
  arrayCopy(array1, array2);

  //  print both arrays
  print("array1: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array1[i][j] + " ");
    }
  }  println();
  print("array2: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array2[i][j] + " ");
    }
  }  println();
  println();
  

  println("new values generated for array1 only:");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      array1[i][j] = int(random(2*5));
    }
  }
  
  //  print both arrays
  print("array1: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array1[i][j] + " ");
    }
  }  println();
  print("array2: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array2[i][j] + " ");
    }
  }  println();
  println();
  
  println("new values generated for array2 only:");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      array2[i][j] = int(random(2*5));
    }
  }
  
  //  print both arrays
  print("array1: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array1[i][j] + " ");
    }
  }  println();
  print("array2: ");
  for(int j = 0; j < 5; j++){
    for(int i = 0; i < 2; i++){
      print(array2[i][j] + " ");
    }
  }  println();
  println();

}


void draw(){}