CodeGym /Blog Java /Random-PL /Metoda Arrays.copyOf() w Javie
Autor
Vasyl Malik
Senior Java Developer at CodeGym

Metoda Arrays.copyOf() w Javie

Opublikowano w grupie Random-PL

Co to jest metoda Arrays.copyOf() w Javie?

Klasa Java java.util.Arrays udostępnia metodę o nazwie Arrays.copyOf() , która zwraca kopię tablicy przekazanej jako parametr do tej funkcji, a następnie określa jej rozmiar. Oto nagłówek metody dla szybkiego zrozumienia.

Arrays.copyOf(int[] templateArray, int length);
Zauważ, że drugi parametr „długość” to rozmiar tablicy kopii, którą chcesz utworzyć. Więc tutaj możemy mieć 3 przypadki.
  • Długości tablic szablonów i kopii są takie same.
  • Długość tablicy kopii jest większa niż długość tablicy szablonu.
  • Długość tablicy kopiowania jest mniejsza niż długość tablicy szablonów.
Spójrzmy na przykład kodowania, aby zobaczyć, jak możemy obsłużyć wszystkie trzy scenariusze wymienione powyżej. Metoda Arrays.copyOf() w Javie — 1

Przykład kodowania


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

}

Wyjście

Szablon tablicy: [1, 2, 3, 4, 5, 6] Kopiuj tablicę 1: [1, 2, 3, 4, 5, 6] Kopiuj tablicę 2: [1, 2, 3, 4, 5, 6, 0, 0, 0, 0] Kopiuj tablicę 3: [1, 2, 3]

Wniosek

Do tej pory musisz mieć logiczne pojęcie o metodzie Arrays.copyOf() w Javie. Możesz jednak swobodnie eksperymentować z różnymi danymi wejściowymi, aby zaspokoić swoją ciekawość.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION