No es posible.
El objeto m1 del método no está aún creado cuando se usa como parámetro.
Esa línea se parece a un bucle infinito, excepto que el compilador lo detecta.
Muchas gracias, estaba convencido de que no se podía, solo puedo copiar un array si previamente está inicializado.
Gracias, un saludo
Para evitar dudas, hay una diferencia entre crear e inicializar un array:
Crear:
int[] array = new int[1000];
Inicializar:
Arrays.fill(array, -1);
Muy buenas, no consigo entender porque no funciona el siguiente código:
public class Test {
public static double[][] copiarMatrices(double[][] origen, double[][] destino) {
double[][] copiaDestino = new double[origen.length][origen[0].length];
for (int x = 0; x < origen.length; x++) {
for (int y = 0; y < origen[0].length; y++) {
copiaDestino[x][y] = origen[x][y];
}
}
return copiaDestino;
}
public static void main(String[] args) {
double[][] m = new double[][] { {10, 20, 30}, {40, 50, 60} };
double[][] m1 = copiarMatrices(m, m1);
for (int x = 0; x < m.length; x++)
for (int y = 0; y < m[0].length; y++)
System.out.print(m1[x][y]);
}
}
¿No puedo inicializar el Array m1 pasándole la referencia al método?
Muchas gracias, saludos.