Rumah  >  Artikel  >  Java  >  Mengapakah Memulakan Saiz ArrayList Penting Jika Anda Tidak Dapat Mengakses Ruang Yang Diperuntukkan Dengan Segera?

Mengapakah Memulakan Saiz ArrayList Penting Jika Anda Tidak Dapat Mengakses Ruang Yang Diperuntukkan Dengan Segera?

Barbara Streisand
Barbara Streisandasal
2024-11-02 12:12:031017semak imbas

Why Does Initializing ArrayList Size Matter If You Can't Access the Allocated Space Immediately?

Memahami Tujuan Memulakan Saiz ArrayList

Kelas Java ArrayList menawarkan fleksibiliti untuk menentukan saiz awal semasa penciptaan. Walau bagaimanapun, ia sering mengelirukan mengapa ini perlu jika anda tidak dapat mengakses ruang yang diperuntukkan dengan segera. Soalan ini menyelidiki perbezaan antara saiz dan kapasiti ArrayList untuk menjelaskan perkara ini.

Saiz Permulaan vs. Kapasiti

Apabila memulakan ArrayList dengan ArrayList baharu< >(10), anda tidak menentukan saiznya tetapi kapasitinya. Kapasiti merujuk kepada bilangan elemen yang boleh dipegang oleh ArrayList tanpa perlu mengagihkan semula struktur data asasnya. Dengan menetapkan kapasiti awal, anda mengoptimumkan prestasi dengan mengelakkan pengagihan semula yang tidak perlu semasa anda menambah elemen.

Menambah Elemen

Bertentangan dengan andaian anda, tambah(int index, Object element ) sememangnya menambah elemen pada indeks yang ditentukan. Walau bagaimanapun, ini memerlukan senarai mempunyai kapasiti yang mencukupi untuk menampung elemen baharu. Apabila anda mencuba arr.add(5, 10), anda menerima pengecualian di luar sempadan kerana ArrayList belum mempunyai elemen, menghasilkan kapasiti kosong.

Contoh: Memulakan dan Mengisi ArrayList

Untuk memulakan ArrayList dengan kapasiti 10 dan mengisinya dengan elemen, anda boleh menggunakan gelung:

<code class="java">ArrayList<Integer> arr = new ArrayList<>(10);
for (int i = 0; i < 10; i++) {
  arr.add(0);
}</code>

Sekarang, anda boleh mengubah suai atau mendapatkan semula elemen pada indeks 0 hingga 9, menggunakan kapasiti awal yang anda tetapkan.

Ringkasnya, menetapkan kapasiti awal untuk ArrayList membantu mengoptimumkan prestasi dengan mengelakkan overhed pengagihan semula apabila senarai anda berkembang. Walaupun saiz awal ArrayList adalah sifar, kapasiti memastikan ruang yang mencukupi tersedia untuk menampung elemen berikutnya dengan cekap.

Atas ialah kandungan terperinci Mengapakah Memulakan Saiz ArrayList Penting Jika Anda Tidak Dapat Mengakses Ruang Yang Diperuntukkan Dengan Segera?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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