Wenn ein Array wirklich zu einem anderen kopiert wird, wenn die Länge des Neuen Arrays kürzer ist als die Länge des ursprünglichen Arrays, dann ist das Neue Array eine Kopie, aber an der kopierten Länge abgeschnitten. Wenn das Neue Array länger ist, werden die zusätzlichen Elemente gegenüber seinem Ende mit den Standardwerten des Datentyps gefüllt. Damit ein Array auf einen anderen kopiert werden kann, müssen beide Arrays denselben Typ oder kompatiblen Typen haben.
Java hat eine Methode, um ein Array auf einen anderen zu kopieren. Diese Methode ist die methode copyof () und für die verschiedenen Datentypen überlastet. Es ist eine statische Methode der Array -Klasse. "Statisch" bedeutet, dass ein Array nicht so instanziiert werden muss, dass die Methode verwendet wird. Es verwendet den Klassennamen Array mit dem ersten 'a' in Großbuchstaben. Die Methode gibt das kopierte Array zurück. Dieser Artikel erläutert die verschiedenen überladenen Formulare der Copyof () -Methode. Es enthält, wie man Referenztypen kopiert. Wie man einen Array -Bereich kopiert, wird nicht ausgelassen.
Kopieren einer Reihe von booleschen Werten
Die Syntax ist:
statischer Boolean [] Copyof (Boolean [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird FALSE als Werte zum Neuarray gepolstert, um die neue Länge zu haben. Das folgende Programm zeigt dies:
Java importieren.Util.Arrays;Die Ausgabe ist:
wahr wahr wahrFür die erste Ausgangslinie gibt es eine Kürzung. Für die zweite Ausgangsleitung sind beide Arrays gleich. Das Neue Array ist länger als das ursprüngliche Array für die dritte Ausgangsleitung.
Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe von Byte -Werten
Die Syntax ist:
statisches Byte [] Copyof (Byte [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird 0 als Werte für das Neue Array gepolstert, um die neue Länge zu haben. Der folgende Main () Method -Code veranschaulicht dies:
statisches Byte [] Copyof (Byte [] Original, int NewLength)Die Ausgabe ist:
1 2 3Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe von Zeichenwerten
Die Syntax ist:
static char [] copyof (char [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird "als Werte für das Neue Array gepolstert, um die Neulänge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
A b cDie Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe von Doppelwerten
Die Syntax ist:
Static Double [] Copyof (Double [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, 0.0 wird als Werte in das Neue Array gepolstert, um die Neulänge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
1.5 2.5 3.5Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe von Schwimmerwerten
Die Syntax ist:
static float [] copyof (float [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, 0.0 wird als Werte in das Neue Array gepolstert, um die Neulänge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
1.5 2.5 3.5Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren eines Arrays von int -Werten
Die Syntax ist:
static int [] copyof (int [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird 0 als Werte für das Neue Array gepolstert, um die neue Länge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
1 2 3Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe langer Werte
Die Syntax ist:
static long [] copyof (lang [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird 0 als Werte für das Neue Array gepolstert, um die neue Länge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
1 2 3Die Länge des Neuarrays wird durch den Parameter NewLength der Copyof () -Methodensyntax bestimmt.
Kopieren einer Reihe von kurzen Werten
Die Syntax ist:
Static Short [] Copyof (Short [] Original, int NewLength)Original ist der Name des ursprünglichen Arrays. NewLength ist die Länge des neuen oder kopierten Arrays. Wenn es kürzer ist, wird die Kopie bei NewLength abgeschnitten. Wenn es länger ist, wird 0 als Werte für das Neue Array gepolstert, um die neue Länge zu haben. Codebeispiel:
public static void main (String [] args)Die Ausgabe ist:
1 2 3Kopieren eines Arrays von Referenzdatentypen
Ein gutes Beispiel für den Referenzdatentyp ist das String -Objekt, das aus der String -Klasse instanziiert ist. Die Copyof () -Syntax entspricht den obigen Syntaxen. Der folgende Code zeigt dies:
Java importieren.Util.Arrays;Die Ausgabe ist:
eins zwei dreiDer Standardwert für den Referenzdatentyp ist null.
Kopieren einer Reichweite
Der Bereich eines Arrays kann kopiert werden. Die Syntax zum Kopieren des Bereichs einer Reihe von Zeichen ist:
static char [] copyofrange (char [] original, int von, int to)"From" ist der erste Index, und "to" ist der letzte Index, dessen Wert der Bereich einfach nicht enthalten ist, in der Kopie. Beispielcode:
public static void main (String [] args)Die Ausgabe ist:
B cDas Kopieren der Bereiche der primitiven und Referenzdatentypen ähnelt diesem Code.
Abschluss
Die Array -Klasse hat die statische überlastete Methode zum Kopieren von Arrays. Es wird verwendet, um das gesamte Array zu kopieren. Wenn das kopierte Array kurz ist, wird das Kopieren an der angegebenen verkürzten Länge durchgeführt. Wenn das kopierte Array länger als das ursprüngliche Array ist, wird der Standardwert für die zusätzlichen hinzugefügten Elemente gepolstert. Die statische Methode von CopyofRange () kann verwendet werden, um einen Bereich zu kopieren. Das nächste, was der Leser studieren sollte, ist, wie man eine Reihe von generischen Typen kopiert, .