Rumah >Java >javaTutorial >Bagaimana untuk Membuang Elemen dengan Selamat dari Senarai Java Semasa Lelaran?

Bagaimana untuk Membuang Elemen dengan Selamat dari Senarai Java Semasa Lelaran?

Patricia Arquette
Patricia Arquetteasal
2024-12-31 18:42:10565semak imbas

How to Safely Remove Elements from a Java List During Iteration?

Panggilan alih keluar dalam Gelung Foreach di Java

Menyala Dengan Selamat Menggunakan Peulang

Mengubah suai koleksi sambil mengulanginya menggunakan gelung foreach boleh membawa kepada ralat. Untuk mengalih keluar elemen dengan selamat semasa lelaran, gunakan Iterator eksplisit.

List<String> names = ...
Iterator<String> i = names.iterator();
while (i.hasNext()) {
    String s = i.next();
    if (...) {
        i.remove();
    }
}

Pengecualian Pengubahsuaian Serentak

Tanpa menggunakan Iterator, kod akan gagal dengan ConcurrentModificationException jika koleksi diubah suai semasa lelaran. Iterator eksplisit memastikan bahawa perubahan dijejaki dan ditunjukkan dalam koleksi asas.

Nota tentang Pembuangan Bersarang

Dalam contoh yang disediakan, gelung while dalam terus dialih keluar unsur yang sama sehingga ia tidak lagi wujud. Walaupun secara teknikalnya sah, ia biasanya dianggap sebagai amalan yang tidak baik melainkan terdapat sebab yang sangat spesifik.

Atas ialah kandungan terperinci Bagaimana untuk Membuang Elemen dengan Selamat dari Senarai Java Semasa Lelaran?. 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