Optimisation : For ou For Each ?

Résolu
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 - 20 avril 2007 à 14:30
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 - 21 avril 2007 à 10:35
Bonjour,

Cherchant à optimiser mon code, voici ma question :

Une boucle For (For i as integer = 0, Next ..) est-elle plus rapide que For Each (For each value as string In ... next) ?

Je précise que mon programme execute des milliers de fois la boucle For each ... (je peux voir la consommation de RAM qui augmente, puis d'un coup dimininue (garbage collector ?))

Merci de répondre
+

7 réponses

allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
20 avril 2007 à 15:23
For est plus rapide !
voilà @++
3
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 14:37
Salut,

2 choses meme si je connais pas .net,

1)faudrait expliquer dce que tu fais dans la boucle car je vois pas le rapport entre:  

(For i as integer = 0, Next ..) et For Each (For each value as string In ... next)

2) Je pense que tu es plus a meme de repondre a cette question. A toi de la tester, surout avec autant de boucle, tu verra tout de suite lequel sera le plus rapide avec un timer (s'il y a) ou un equivalent. Non ?
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
20 avril 2007 à 14:39
avec 1 StopWatch bonne idée
(j'avais même pas pensé )

ok je test, et je dirais mes résultats
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 15:32
tu dois pouvoir aussi optimiser ton code (sauf s'il est elementaire). Et c'est en cela que tu gagnera un temps enorme.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
20 avril 2007 à 17:05
oui c'est déjà fait : exemple à la place de If String.IsNullOrEmpty : if [string].lentgh <> 0

merci beaucoup
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
20 avril 2007 à 20:52
J'aime bien quand même la réponse acceptée :
Réponse acceptée !
For est plus rapide !
voilà @++


On s'en serait douté, mais on ne sais toujours pas lequel des 2 for est le plus rapide

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
21 avril 2007 à 10:35
la boucle For simple lol
For i as integer = 0 to ...
next

est plus rapide que :

For each value as string in ...
next

voilà c'est mieux
0
Rejoignez-nous