CodeGym /Java Blog /Willekeurig /Arrays.copyOf() Methode in Java
John Squirrels
Niveau 41
San Francisco

Arrays.copyOf() Methode in Java

Gepubliceerd in de groep Willekeurig

Wat is de methode Arrays.copyOf() in Java?

De Java-klasse java.util.Arrays biedt een methode met de naam Arrays.copyOf() die een kopie retourneert van een array die als parameter aan deze functie is doorgegeven, gevolgd door het specificeren van de grootte ervan. Hier is de methodekop voor snel begrip.

Arrays.copyOf(int[] templateArray, int length);
Merk op dat de tweede parameter "lengte" de grootte is van de kopieerarray die u wilt maken. Dus hier kunnen we 3 gevallen hebben.
  • De lengtes van beide sjabloon- en kopieerarrays zijn hetzelfde.
  • De lengte van de kopieerarray is groter dan de lengte van de sjabloonarray.
  • De lengte van de kopieerarray is kleiner dan de lengte van de sjabloonarray.
Laten we naar het coderingsvoorbeeld kijken om te zien hoe we alle drie bovengenoemde scenario's aankunnen. Arrays.copyOf() Methode in Java - 1

Coderingsvoorbeeld


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));
	}

}

Uitgang

Sjabloonmatrix: [1, 2, 3, 4, 5, 6] Kopieer matrix 1: [1, 2, 3, 4, 5, 6] Kopieer matrix 2: [1, 2, 3, 4, 5, 6, 0, 0, 0, 0] Kopieer matrix 3: [1, 2, 3]

Conclusie

U moet nu een logisch begrip hebben van de methode Arrays.copyOf() in Java. Voel je echter vrij om met verschillende inputs te experimenteren om je nieuwsgierigheid te voeden.
Opmerkingen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION