LINQ dengan cekap mengalih keluar elemen Senarai
LINQ berkuasa dalam operasi pengumpulan objek Artikel ini meneroka cara mengalih keluar elemen daripada Senarai
Andaikan anda mahu mengalih keluar semua pengarang bernama "Bob" daripada senarai pengarang:
<code class="language-csharp">var authors = from x in authorsList where x.firstname == "Bob" select x;</code>
Kini anda perlu mengalih keluar pengarang ini daripada koleksi 'authorsList' asal. Terdapat beberapa cara untuk melakukan ini:
<code class="language-csharp">authorsList = authorsList.Where(x => x.FirstName != "Bob").ToList();</code>
Kaedah ini mengubah suai 'authorsList' dengan mengecualikan pengarang bernama "Bob" daripada pertanyaan awal.
<code class="language-csharp">authorsList.RemoveAll(x => x.FirstName == "Bob);</code>
Kaedah RemoveAll mengalih keluar elemen padanan dengan cekap daripada koleksi 'authorsList'.
Jika operasi penyingkiran perlu berdasarkan set lain, anda boleh menggunakan HashSet:
<code class="language-csharp">var setToRemove = new HashSet<author>(authors); authorsList.RemoveAll(x => setToRemove.Contains(x));</code>
Kaedah ini mencipta HashSet yang mengandungi elemen yang akan dialih keluar, dan kemudian menggunakan RemoveAll untuk mengalih keluarnya dengan cekap daripada 'authorsList'.
Dengan kaedah di atas, anda boleh memilih cara paling berkesan untuk mengalih keluar elemen daripada senarai LINQ mengikut keperluan sebenar anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Elemen dengan Cekap dari Senarai dalam LINQ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!