CodeGym /Blog Java /Random-ES /Método Arrays.copyOf() en Java
Autor
Vasyl Malik
Senior Java Developer at CodeGym

Método Arrays.copyOf() en Java

Publicado en el grupo Random-ES

¿Qué es el método Arrays.copyOf() en Java?

La clase Java java.util.Arrays proporciona un método llamado Arrays.copyOf() que devuelve una copia de una matriz pasada como parámetro a esta función, seguido de la especificación de su tamaño. Aquí está el encabezado del método para una comprensión rápida.

Arrays.copyOf(int[] templateArray, int length);
Tenga en cuenta que el segundo parámetro "longitud" es el tamaño de la matriz de copia que desea crear. Así que aquí podemos tener 3 casos.
  • Las longitudes de las matrices de plantilla y copia son las mismas.
  • La longitud de la matriz de copia es mayor que la longitud de la matriz de plantilla.
  • La longitud de la matriz de copia es menor que la longitud de la matriz de plantilla.
Veamos el ejemplo de codificación para ver cómo podemos manejar los tres escenarios mencionados anteriormente. Método Arrays.copyOf() en Java - 1

Ejemplo de codificación


import java.util.Arrays;
public class ArraysCopyOfMethod {
	public static void main(String[] args) {
		
	  // Initialize your templateArray which you want a copy of
        int[] templateArray = new int[] {1, 2, 3, 4, 5, 6};  
        System.out.println("Template Array: " + Arrays.toString(templateArray)); 
        	    
        // Create a "copy" of template array using 
        // Arrays.copyOf(int[] array, int arrayLength) method 
        
        // CASE 1: Sizes of both template & copy arrays are same
        int[] copyArray1 = Arrays.copyOf(templateArray, templateArray.length);
        System.out.println("Copy Array 1: " + Arrays.toString(copyArray1));
      
        // CASE 2: Size of copy array > Size of template array
        // extra space in copy array is filled with zeros
        int[] copyArray2 = Arrays.copyOf(templateArray, 10);
        System.out.println("Copy Array 2: " + Arrays.toString(copyArray2));
  
        // CASE 3: Size of copy array < Size of template array
        // copy array is only filled with only elements in overlapping size
        int[] copyArray3 = Arrays.copyOf(templateArray, 3);
        System.out.println("Copy Array 3: " + Arrays.toString(copyArray3));
	}

}

Producción

Matriz de plantilla: [1, 2, 3, 4, 5, 6] Copiar matriz 1: [1, 2, 3, 4, 5, 6] Copiar matriz 2: [1, 2, 3, 4, 5, 6, 0, 0, 0, 0] Copiar matriz 3: [1, 2, 3]

Conclusión

A estas alturas, debe tener una comprensión lógica del método Arrays.copyOf() en Java. Sin embargo, siéntase libre de experimentar con diferentes entradas para alimentar su curiosidad.
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION