Artículos
Java

Copiar arrays en Java

19/Jun/2007

Muchas veces nos vamos a encontrar ante la disyuntiva de tener que copiar los elementos de un array en otros. Normalmente será para manipular el contenido del mismo guardando en uno de los arrays los datos originales.

Asumida ya la situación, lo primero que se nos ocurriría, independientemente del lenguaje en el que nos encontremos, será el montar un algoritmo que recorriendo el primer array vaya copiando dichos elementos en el segundo.

En Java nos quedaría un código como este:

for (int x=0;x<aOrigen.length;x++)
  aDestino[x] = aOrigen[x];

En este sentido nada que objetar, ya que es muy buena práctica de programación. Pero todo buen programador tiene que tener en mente el concepto de «reutilización». No «reutilización» cómo copia (o fusilamiento -argot de muchos programadores-) del código. Sino «reutilización» pensando en que alguien ya puede haberse encontrado el problema y haberle dado ya una solución.

Para poder reutilizar tenemos que ser conscientes de lo que el entorno en el que estamos nos ofrece. Y en el caso de Java, es la librería del sistema la que nos ofrece una función para la copia de arrays. Como vemos en el siguiente código:

System.arrayCopy(aOrigen,inicioArrayOrigen,aDestino,
  inicioArrayDestino,numeroElementosACopiar);

Hay que tener cuidado la función arrayCopy ya que esta nos puede devolver las siguientes excepciones: IndexOutOfBoundsException si intentamos copiar fuera del área reservado para el array, ArrayStoreException si intentamos copiar arrays de diferente tipo o NullPointerException si alguno de los array es nulo (vamos, no inicializado).

Código Fuente

Descárgate el código fuente de Copiar arrays en Java
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star

Vídeos sobre Java

Disfruta también de nuestros artículos sobre Java en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Java

¿Te atreves a probar tus habilidades y conocimiento en Java con nuestro test?

Test Java
Suscribir
Notificar de
guest
7 Comentarios
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios