Rumah > Java > javaTutorial > Bagaimana untuk Memperbesar Array dengan Cekap di Jawa?

Bagaimana untuk Memperbesar Array dengan Cekap di Jawa?

Susan Sarandon
Lepaskan: 2024-11-24 07:52:11
asal
540 orang telah melayarinya

How to Efficiently Enlarge Arrays in Java?

Membesarkan Tatasusunan dalam Java: Mengekalkan Elemen Semasa

Tatasusunan dalam Java, tidak seperti dalam bahasa pengaturcaraan lain, adalah tetap dari segi saiz. Menambah elemen baharu pada tatasusunan penuh memerlukan saiz semula manual atau struktur data alternatif.

Mengubah Saiz Tatasusunan

Disebabkan oleh ketakbolehubah tatasusunan Java, saiz semula melibatkan penyalinan elemen sedia ada kepada unsur baharu array dengan saiz yang dikehendaki. Kaedah java.lang.System.arraycopy(...) boleh menyelesaikan tugas ini:

int[] oldArray = {1, 2, 3, 4, 5};
int[] newArray = new int[oldArray.length + 1]; // Larger array
System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
Salin selepas log masuk

Struktur Data Alternatif

Pilihan lain ialah menggunakan data dinamik struktur seperti java.util.ArrayList. Tidak seperti tatasusunan, ArrayLists boleh membesarkan diri mereka secara automatik apabila elemen ditambahkan:

ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
// No resizing needed as the ArrayList expands dynamically
Salin selepas log masuk

Menggunakan Arrays.copyOf(...)

Java 9 memperkenalkan java.util Kaedah .Arrays.copyOf(...), yang memudahkan saiz semula tatasusunan:

int[] oldArray = {1, 2, 3, 4, 5};
int[] newArray = Arrays.copyOf(oldArray, oldArray.length + 1);
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Memperbesar Array dengan Cekap di Jawa?. 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