CodeGym/Java blog/Véletlen/Java System.arraycopy() metódus
John Squirrels
Szint
San Francisco

Java System.arraycopy() metódus

Megjelent a csoportban

Mi az a Java System.arraycopy() metódus?

A java.lang.System.arraycopy() metódus egy adott kezdőpozícióban lévő forrástömböt másol egy adott indexen lévő célhelyre.
Ez a metódus a java.lang.System osztályhoz tartozik . Egy meghatározott hosszúságú altömb tartalmát másolja egy adott forrástömbből egy másik, céltömbnek nevezett tömbbe . A forrástömbre src, a céltömbre pedig dest néven hivatkozunk . Az elemek számát a len argumentum adja meg.

Java System.arraycopy() metódus Deklaráció

A java.lang.System.arraycopy() metódus metódusának deklarációja a java.lang osztályban a következő:
public static void arraycopy(Object src, int srcIndex, Object dest, int destIndex, int len)

Paraméterek

A tömbmásolat metódusának paraméterei a következők :
  1. src : Ez a forrástömb.

  2. srcIndex : A forrástömb kezdő indexe.

  3. dest : Ez a céltömb.

  4. destIndex : A cél tömb kezdő indexe.

  5. len : Azon elemek száma, amelyeket a forrástömbből a céltömbbe kell másolni.

Funkcionalitás

Az arraycopy módszer az src- ből az srcIndex- től az srcIndex +( len -1) elemekig az adatokat a destIndexnél lévő céltömbbe másolja a destIndex + ( len -1) elemig .

Visszatérési érték

Az arraycopy metódus void return típusú, ami azt jelenti, hogy nem ad vissza semmit.

Példa

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] + " ");
    }
}

Kimenet

len : 2 srcIndex : 2 src : hétfő kedd szerda csütörtök péntek szombat vasárnap destIndex : 3 cél : január február március április május június július augusztus végső cél tömb : január február március szerda csütörtök június július augusztus

Példa a paraméterek megváltoztatására

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

Kimenet

len : 1 srcIndex : 4 src : hétfő kedd szerda csütörtök péntek szombat vasárnap destIndex : 5 cél : január február március április május június július augusztus végső cél tömb : január február március április május péntek július augusztus

Magyarázat

A fenti kódban két tömböt definiáltunk : src[] és dest[] . Ezt követően meghatároztuk az srcIndexet és a destIndexet , hogy meghatározzuk mindkét tömb referenciapozícióit. Az első példában a System.arraycopy metódus átmásolja az elemeket az src[] forrástömbből a 2-es indextől kezdve a 3-as indexig (mert len ​​= 2) a céltömbbe, a 3-as indextől kezdve. a végső cél tömb az elemek másolása után. A második példában a System.arraycopy metódus 1 elemet másol (mert len ​​= 1) a forrástömbbőlsrc[] , a 4-es indextől kezdve a céltömbbe, az 5-ös indextől kezdve, és az elemek másolása után a végső céltömböt is kiadja.

Következtetés

Reméljük, hogy a bejegyzés végére már megismerte a java.lang.System.arraycopy módszert a Java nyelven. Folytassa a gyakorlást a fogalom mélyebb megismeréséhez. Addig is fejlődj és ragyogj tovább!
Hozzászólások
  • Népszerű
  • Új
  • Régi
Hozzászólás írásához be kell jelentkeznie
Ennek az oldalnak még nincsenek megjegyzései