CodeGym/Java blogg/Slumpmässig/Metoden Arrays.copyOf() i Java
John Squirrels
Nivå
San Francisco

Metoden Arrays.copyOf() i Java

Publicerad i gruppen

Vad är Arrays.copyOf()-metoden i Java?

Java-klassen java.util.Arrays tillhandahåller en metod som kallas Arrays.copyOf() som returnerar en kopia av en array som skickas som en parameter till den här funktionen, följt av att specificera dess storlek. Här är metodhuvudet för snabb förståelse.
Arrays.copyOf(int[] templateArray, int length);
Observera att den andra parametern "längd" är storleken på den kopieringsarray du vill skapa. Så här kan vi ha 3 fall.
  • Längden på både mall- och kopieringsmatriser är desamma.
  • Kopieringsmatrisens längd är längre än mallmatrisens längd.
  • Kopieringsmatrisens längd är mindre än mallmatrisens längd.
Låt oss titta på kodningsexemplet för att se hur vi kan hantera alla tre scenarier som nämns ovan. Arrays.copyOf()-metoden i Java - 1

Kodningsexempel

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

}

Produktion

Template Array: [1, 2, 3, 4, 5, 6] Kopiera Array 1: [1, 2, 3, 4, 5, 6] Kopiera Array 2: [1, 2, 3, 4, 5, 6, 0, 0, 0, 0] Kopiera Array 3: [1, 2, 3]

Slutsats

Vid det här laget måste du ha ett logiskt grepp om Arrays.copyOf()- metoden i Java. Men experimentera gärna med olika insatser för att underblåsa din nyfikenhet.
Kommentarer
  • Populär
  • Ny
  • Gammal
Du måste vara inloggad för att lämna en kommentar
Den här sidan har inga kommentarer än