Heim > Java > javaLernprogramm > So kopieren Sie 2D-Arrays effektiv in Java: Clone vs. System.arraycopy()

So kopieren Sie 2D-Arrays effektiv in Java: Clone vs. System.arraycopy()

Patricia Arquette
Freigeben: 2024-11-03 07:29:02
Original
810 Leute haben es durchsucht

How to Effectively Copy 2D Arrays in Java: Clone vs. System.arraycopy()

Kopieren von 2D-Arrays in Java

Bei der Arbeit mit 2D-Arrays ist es oft notwendig, Kopien zu Bearbeitungszwecken oder zur Beibehaltung von Originaldaten zu erstellen. In Java gibt es mehrere Ansätze, um dies zu erreichen.

Option 1: Verwenden von Clone

Die clone()-Methode bietet eine schnelle Möglichkeit, eine flache Kopie von a zu erstellen 2D-Array, bei dem nur die Verweise auf die Array-Elemente kopiert werden. So verwenden Sie diese Methode:

<code class="java">int[][] myInt = new int[matrix.length][];
for (int i = 0; i < matrix.length; i++)
  myInt[i] = matrix[i].clone();</code>
Nach dem Login kopieren

Option 2: Verwenden von System.arraycopy()

Für eine kontrollierte und effizientere Kopie kann System.arraycopy() verwendet werden gebraucht. Es ermöglicht Ihnen, bestimmte Teile des 2D-Arrays zu kopieren:

<code class="java">int[][] myInt = new int[matrix.length][];
for (int i = 0; i < matrix.length; i++) {
  int[] aMatrix = matrix[i];
  int aLength = aMatrix.length;
  myInt[i] = new int[aLength];
  System.arraycopy(aMatrix, 0, myInt[i], 0, aLength);
}</code>
Nach dem Login kopieren

Vergleich der Methoden

Sowohl clone() als auch System.arraycopy() bieten zuverlässige Optionen für Kopieren von 2D-Arrays. Allerdings bietet System.arraycopy() eine größere Flexibilität und ist wahrscheinlich schneller als clone(), da es in nativem Code implementiert ist. Außerdem wird die Möglichkeit einer Datenbeschädigung vermieden, die beim Erstellen flacher Kopien mit clone() auftreten kann.

Durch das Verständnis dieser Methoden können Sie 2D-Arrays in Ihrem Java-Code effektiv kopieren und manipulieren, um die Datenintegrität sicherzustellen und häufige Fehler zu vermeiden Fallstricke.

Das obige ist der detaillierte Inhalt vonSo kopieren Sie 2D-Arrays effektiv in Java: Clone vs. System.arraycopy(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage