Was ist die Java System.arraycopy()-Methode?
Deklaration der Java System.arraycopy()-Methode
Die Methodendeklaration für die Methode java.lang.System.arraycopy() in der Klasse java.lang lautet wie folgt:
public static void arraycopy(Object src, int srcIndex, Object dest, int destIndex, int len)
Parameter
Im Folgenden sind die Parameter der Arraycopy- Methode aufgeführt:-
src : Es ist das Quellarray.
-
srcIndex : Dies ist der Startindex des Quellarrays.
-
dest : Es ist das Zielarray.
-
destIndex : Dies ist der Startindex des Zielarrays.
-
len : Dies ist die Anzahl der Elemente, die vom Quellarray in das Zielarray kopiert werden müssen.
Funktionalität
Die Methode arraycopy kopiert Daten von src , beginnend mit den Elementen srcIndex bis srcIndex +( len - 1), in das Array dest bei destIndex bis destIndex + ( len - 1).Rückgabewert
Die Arraycopy- Methode hat den Rückgabetyp void , was bedeutet, dass sie nichts zurückgibt.Beispiel
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] + " ");
}
}
Ausgang
len: 2
srcIndex: 2
src: Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag,
destIndex: 3
dest: Januar, Februar, März, April, Mai, Juni, Juli, August,
endgültiges Zielarray: Januar, Februar, März, Mittwoch, Donnerstag, Juni, Juli, August
Beispiel für das Ändern von Parametern
// Example of changing parameters
srcIndex = 4;
destIndex = 5;
len = 1;
Ausgang
len: 1
srcIndex: 4
src: Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag,
destIndex: 5 dest: Januar, Februar, März, April, Mai, Juni, Juli, August,
endgültiges Zielarray: Januar, Februar, März, April, Mai, Freitag, Juli, August
GO TO FULL VERSION