Para resolverlo, es necesario tener presente cómo trabajan los arreglos en Java y el concepto de referencia. 😀

Click aquí para desplegar la solución. 👈
La respuesta correcta es la c.
✏️ Explicación: Los arreglos en Java son alocados dinámicamente (son objetos). Por ende, cuando asignamos un arreglo a otro no se está realizando una copia sino que ambas variables referencian al mismo objeto. Al modificar un elemento de la variable m1, se altera la única instancia del arreglo que existe, la cual puede referenciarse como m1 o m2 indistintamente.


Solución al desafío



Desafío Java 👇

desafío Java número 1

Click aquí para una versión accesible de la infografía (apta para lectores electrónicos)
class Main {
  public static void main(String[] args) {
    int[] m1 = {1,131,100,99};
    int[] m2 = m1;
    m1[0] = 101;
    m2[2] = 30;
    metodo(m1, m2);
    System.out.println(m1[1]+" "+m2[3]+" ");
  }
  
  public static void metodo(int[] a1, int[] a2) {
    a1[3] = 98;
  }
}

¿Qué imprime este programa?

a. 101 30.

b. 132 99.

c. 132 98.

d. 101 99.