Ano ang Arrays.copyOf() method sa Java?
Ang Java class na java.util.Arrays ay nagbibigay ng paraan na tinatawag na Arrays.copyOf() na nagbabalik ng kopya ng array na ipinasa bilang parameter sa function na ito, na sinusundan ng pagtukoy sa laki nito. Narito ang header ng pamamaraan para sa mabilis na pag-unawa.
Arrays.copyOf(int[] templateArray, int length);
Tandaan na ang pangalawang parameter na "haba" ay ang laki ng hanay ng kopya na gusto mong gawin. Kaya dito maaari tayong magkaroon ng 3 kaso.
- Ang mga haba ng parehong template at copy array ay pareho.
- Ang haba ng copy array ay mas malaki kaysa sa haba ng template array.
- Ang haba ng hanay ng kopya ay mas mababa kaysa sa haba ng hanay ng template.

Halimbawa ng Coding
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));
}
}
Output
Template Array: [1, 2, 3, 4, 5, 6] Copy Array 1: [1, 2, 3, 4, 5, 6] Copy Array 2: [1, 2, 3, 4, 5, 6, 0, 0, 0, 0] Kopyahin ang Array 3: [1, 2, 3]
GO TO FULL VERSION