CodeGym/Blog Java/Aleatoriu/Metoda Java System.arraycopy().
John Squirrels
Nivel
San Francisco

Metoda Java System.arraycopy().

Publicat în grup

Ce este metoda Java System.arraycopy()?

Metoda java.lang.System.arraycopy() copiază o matrice sursă, la o anumită poziție de început, la o destinație la un index dat.
Această metodă aparține clasei java.lang.System . Copiază conținutul unui subbary de o lungime specificată dintr-o matrice sursă dată într-o altă matrice numită matrice destinație . Matricea sursă este denumită src și matricea destinație ca dest . Numărul de elemente este dat de argumentul len .

Metoda Java System.arraycopy() Declarație

Declarația metodei pentru metoda java.lang.System.arraycopy() din clasa java.lang este următoarea:
public static void arraycopy(Object src, int srcIndex, Object dest, int destIndex, int len)

Parametrii

Următorii sunt parametrii metodei arraycopy :
  1. src : este matricea sursă.

  2. srcIndex : Este indexul de pornire al matricei sursă.

  3. dest : este matricea de destinație.

  4. destIndex : Este indexul de pornire al matricei de destinație.

  5. len : este numărul de elemente care trebuie copiate din matricea sursă în matricea destinație.

Funcționalitate

Metoda arraycopy copiază datele din src , începând de la elementele srcIndex până la srcIndex +( len - 1), în tabloul dest de la destIndex până la destIndex + ( len - 1).

Valoare returnată

Metoda arraycopy are un tip de returnare void , ceea ce înseamnă că nu returnează nimic.

Exemplu

public class Example {

    public static void main(String[] args) {

        String[] src = { "Monday","Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
        String[] dest = { "January", "February", "March", "April", "May", "June", "July", "August"};

        int srcIndex = 2;
        int destIndex = 3;
        int len = 2;

        //print number of elements that need to be copied
        //from the source to the destination array
        System.out.println("len : " + len);

        //print source index
        System.out.println("srcIndex : " + srcIndex);

        //print elements of the source array
        System.out.print("src : ");
        for (int i = 0; i < src.length; i++)
            System.out.print(src[i] + " ");
        System.out.println("");

        //print destination index
        System.out.println("destIndex : " + destIndex);

        //print elements of the destination array
        System.out.print("dest : ");
        for (int i = 0; i < dest.length; i++)
            System.out.print(dest[i] + " ");
        System.out.println("");

        // Use of arraycopy() method
        System.arraycopy(src, srcIndex, dest, destIndex, len);
        // this method copies the 'len' no of elements
        // from the src array to the dest array using the srcIndex
        // and destIndex as reference points in both the arrays


        // Print elements of destination after
        System.out.print("final destination array : ");
        for (int i = 0; i < dest.length; i++)
            System.out.print(dest[i] + " ");
    }
}

Ieșire

len : 2 srcIndex : 2 src : Luni Marti Miercuri Joi Vineri Sambata Duminica destIndex : 3 dest : Ianuarie Februarie Martie Aprilie Mai Iunie Iulie August matrice de destinatie finala : Ianuarie Februarie Martie Miercuri Joi Iunie Iulie August

Exemplu de modificare a parametrilor

// Example of changing parameters
         srcIndex = 4;
         destIndex = 5;
         len = 1;

Ieșire

len : 1 srcIndex : 4 src : Luni Marți Miercuri Joi Vineri Sâmbătă Duminică destIndex : 5 dest : Ianuarie Februarie Martie Aprilie Mai Iunie Iulie August matrice destinație finală : Ianuarie Februarie Martie Aprilie Mai Vineri Iulie August

Explicaţie

În codul de mai sus, am definit două tablouri src[] și dest[] . După aceea, am definit srcIndex și destIndex pentru a defini pozițiile de referință pentru ambele matrice. În primul exemplu , metoda System.arraycopy copiază elementele din tabloul sursă src[] , începând cu indexul 2 și terminând cu indexul 3 (pentru că len = 2), în tabloul de destinație, începând de la indexul 3. Apoi scoate tabloul de destinație finală după copierea elementelor. În al doilea exemplu , metoda System.arraycopy copiază 1 element (deoarece len = 1) din tabloul sursăsrc[] , începând cu indexul 4, la matricea de destinație, începând de la indexul 5 și, de asemenea, scoate matricea de destinație finală după copierea elementelor.

Concluzie

Până la sfârșitul acestei postări, sperăm că v-ați familiarizat cu metoda java.lang.System.arraycopy în Java. Continuați să exersați pentru o stăpânire mai profundă a conceptului. Până atunci, continuă să crești și să strălucești!
Comentarii
  • Popular
  • Nou
  • Vechi
Trebuie să fii conectat pentru a lăsa un comentariu
Această pagină nu are încă niciun comentariu