C # Collection: comparaison des performances d'Ienumerable et de la liste et de la meilleure pratique
Lors du traitement de l'ensemble en C #, sélectionnez
ou est essentiel pour les performances et l'efficacité. Bien que les deux représentent la séquence d'éléments, la méthode d'implémentation est très différente. IEnumerable
List
est une interface qui définit le comportement de la séquence des éléments. Il fournit le fonctionnement des éléments de séquence de traversée, mais n'a pas besoin de charger toute la séquence en mémoire. Cela permet à une haute efficacité de gérer de grands ensembles de données car les données sont retardées.
Liste: la classe de collection spécifique IEnumerable
Utiliser la scène
Choisissez ou List
, veuillez considérer les directives suivantes:
Utilisation de situation:
Besoin de gérer de grands ensembles de données et de retarder le traitement.
IEnumerable
Vous voulez éviter la surcharge de la séquence vers la mémoire. List
IEnumerable
List
Considérez la requête LINQ suivante:
Utiliser Pour permettre à DeLer pour trouver la requête de valeur. Si est utilisé pour en résulter spécifiquement, il obligera toute la séquence à la mémoire, ce qui peut affecter les performances. IEnumerable
List
Plus de ressources IEnumerable
Document MSDN
<code class="language-csharp">IEnumerable<animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct();</code>
IEnumerable
ToList()
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!