perbezaan dan kesan prestasi iEnumerable dan senarai dalam C#
Apabila merawat koleksi di C#, perbezaan antara
dan sangat penting. IEnumerable
mewakili pengarang, yang menyediakan kaedah untuk melintasi koleksi; List
IEnumerable
Pertimbangkan dua pertanyaan LINQ berikut: List
IEnumerable
<code class="language-csharp">List<animal> sel1 = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct().ToList(); IEnumerable<animal> sel2 = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct();</code>
Pertimbangan Prestasi
dari segi prestasi, IEnumerable
biasanya lebih disukai kerana ia ditangguhkan sehingga pertanyaan penghitungan. Menggunakan akan dipaksa untuk mengira dan hasil tertentu dengan segera, yang mungkin mengehadkan peluang pengoptimuman.
Gunakan adegan
IEnumerable
Berkenaan dengan situasi berikut: ToList()
mahu melambatkan pelaksanaan sehingga kemudian. List
Pelbagai lelaran mungkin diperlukan.
Berkenaan dengan situasi berikut: IEnumerable
List
Atas ialah kandungan terperinci IEnumerable vs. List dalam C#: Bilakah anda harus memilih yang mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!