En C#/VB.NET/.NET, qui boucle s'exécute plus rapidement, for
ou foreach
?
Depuis que j'ai lu qu'un for
boucle fonctionne plus rapidement qu'un foreach
boucle un il y a longtemps je suppose qu'il se tenait vrai pour toutes les collections, générique collections, tous les tableaux, etc.
J'ai parcouru Google et trouvé quelques articles, mais la plupart d'entre eux ne sont pas concluants (lire les commentaires sur les articles) et ouvertes.
Ce serait l'idéal est d'avoir chaque scénario et de la meilleure solution pour le même.
Par exemple (juste un exemple de la façon dont elle doit l'être):
- pour l'itération d'un tableau de 1000+
cordes -
for
est mieux queforeach
- pour parcourir
IList
(non générique) cordes -foreach
est mieux qu'for
Quelques références trouvées sur le web pour la même chose:
- Original ancien grand article par Emmanuel Schanzer
- CodeProject FOREACH Vs. POUR
- Blog -
foreach
ou de non -foreach
, telle est la question - ASP.NET forum - NET 1.1 C#
for
vsforeach
[Modifier]
En dehors de la lisibilité de ses aspects, je suis vraiment intéressé par les faits et les chiffres. Il y a des applications où le dernier kilomètre de l'optimisation de la performance pressé la matière.