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.
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]
GO TO FULL VERSION