Mengalih keluar Elemen daripada Koleksi Semasa Lelaran
Apabila mengalih keluar elemen daripada koleksi semasa lelaran, adalah penting untuk mempertimbangkan cara untuk mengelakkan ConcurrentModificationException. Satu pendekatan adalah berulang pada salinan koleksi, memastikan tiada pengubahsuaian berlaku semasa lelaran. Pendekatan lain ialah menggunakan lelaran daripada koleksi sebenar, membenarkan operasi penyingkiran terus.
Mengumpul dan Mengalih Keluar
Dalam pendekatan kumpul dan buang, kami dapati semua elemen untuk dialih keluar dan simpannya dalam senarai berasingan. Selepas lelaran, kami mengalih keluar elemen ini daripada koleksi asal. Teknik ini adalah koleksi-agnostik, berfungsi dengan mana-mana jenis koleksi.
Menggunakan ListIterator
Apabila bekerja dengan senarai, ListIterator menyediakan pilihan yang lebih cekap kerana ia menyokong elemen penyingkiran dan penambahan semasa lelaran. Pendekatan ini secara langsung mengubah suai koleksi sebenar semasa lelaran.
Peningkatan JDK 8
Dalam versi Java 8 dan kemudian, kaedah "removeIf" dan API aliran menawarkan pilihan tambahan untuk penyingkiran unsur. "removeIf" membolehkan kami mengalih keluar elemen yang sepadan dengan predikat, manakala strim membenarkan kami menapis elemen dan menyimpannya dalam koleksi baharu, yang kemudiannya boleh kami gunakan untuk menggantikan yang asal.
Sublist atau Subset
Untuk senarai diisih, menggunakan subsenarai atau subset boleh mengalih keluar elemen berturut-turut dengan cekap. Dengan mengosongkan subsenarai atau subset, kami secara tidak langsung mengubah suai senarai asal.
Pertimbangan
Pendekatan terbaik bergantung pada senario tertentu:
Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Elemen dengan Selamat daripada Koleksi Semasa Lelaran di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!