Rumah > Java > javaTutorial > Cara Menyalin Tatasusunan 2D dengan Berkesan dalam Java: Clone vs. System.arraycopy()

Cara Menyalin Tatasusunan 2D dengan Berkesan dalam Java: Clone vs. System.arraycopy()

Patricia Arquette
Lepaskan: 2024-11-03 07:29:02
asal
807 orang telah melayarinya

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

Menyalin Tatasusunan 2D dalam Java

Apabila bekerja dengan tatasusunan 2D, selalunya perlu membuat salinan untuk tujuan pengeditan atau untuk mengekalkan data asal. Di Java, terdapat beberapa pendekatan untuk mencapai ini.

Pilihan 1: Menggunakan Klon

Kaedah klon() menyediakan cara cepat untuk mencipta salinan cetek a Tatasusunan 2D, di mana hanya rujukan kepada elemen tatasusunan disalin. Untuk menggunakan kaedah ini:

<code class="java">int[][] myInt = new int[matrix.length][];
for (int i = 0; i < matrix.length; i++)
  myInt[i] = matrix[i].clone();</code>
Salin selepas log masuk

Pilihan 2: Menggunakan System.arraycopy()

Untuk salinan yang lebih terkawal dan cekap, System.arraycopy() boleh digunakan. Ia membolehkan anda menyalin bahagian tertentu tatasusunan 2D:

<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>
Salin selepas log masuk

Perbandingan Kaedah

Kedua-dua klon() dan System.arraycopy() menyediakan pilihan yang boleh dipercayai untuk menyalin tatasusunan 2D. Walau bagaimanapun, System.arraycopy() menawarkan fleksibiliti yang lebih besar dan berkemungkinan berprestasi lebih pantas daripada clone() kerana ia dilaksanakan dalam kod asli. Ia juga mengelakkan potensi rasuah data yang boleh berlaku apabila membuat salinan cetek menggunakan klon().

Dengan memahami kaedah ini, anda boleh menyalin dan memanipulasi tatasusunan 2D dengan berkesan dalam kod Java anda, memastikan integriti data dan mengelakkan perkara biasa perangkap.

Atas ialah kandungan terperinci Cara Menyalin Tatasusunan 2D dengan Berkesan dalam Java: Clone vs. System.arraycopy(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan