[DB/MY-AL]Parcours de Circuit

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
djulio74
Messages : 682
Inscription : 19 Déc 2009 22:55

Re: [DB/MY-AL]Parcours de Circuit

Message par djulio74 » 18 Oct 2018 13:14

C'est Foreach qu'il faut éviter et remplacer par for. Qui marche aussi bien avec des list ou des array. faut juste utiliser Length ou Count pour avoir leur longueur.

Code : Tout sélectionner

		int valeur = new int();
		
		List<int> LISTE = new List<int>();
		for ( int i = 0 ; i < LISTE.Count ; i++){
			LISTE[i] = valeur;	// pour modifier une valeur dans la liste
			valeur = LISTE[i];	// pour assigner a une valeur l'élément de la liste
		}
		
		int[] ARRAY = new int[10];
		for ( int i = 0 ; i < ARRAY.Length ; i++){
			ARRAY[i] = valeur;	// pour modifier une valeur dans L'array
			valeur = ARRAY[i];	// pour assigner a une valeur l'élément de l'array
			
		}
;)

______________________________________________________________
\_______________________ Impossible is nothing _______________________/

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: [DB/MY-AL]Parcours de Circuit

Message par EmileF » 18 Oct 2018 15:47

Ok, ça je sais utiliser les 2 formules, j'ai cru qu'il fallait éviter les List, et ça m'embêtait.
pour ce qui est des Foreach, ça ne me gêne pas trop.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Re: [DB/MY-AL]Parcours de Circuit

Message par Alesk » 25 Oct 2018 11:26

Foreach fait plus d'allocations en mémoire que For, donc c'est moins "propre" de ce point de vue.

Ensuite, pour le choix entre Array et List, c'est vraiment dépendant de ce que l'on fait.
Mais d'une manière générale on peut utiliser la classe List, même si c'est légèrement plus lent d'accès que Array.
L'utilisation de Array est plutôt spécifique aux optimisations pointues, dans les cas où de hautes performances sont attendues sur des traitements de beaucoup de données.

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: [DB/MY-AL]Parcours de Circuit

Message par EmileF » 25 Oct 2018 15:34

Je te remercie

Ca ne me gêne pas d'utiliser For plutôt que Foreach. Je ne savais pas que c'était moins "Propre", je pensais même le contraire.
Par contre il y a des cas ou j'aurais eu du mal à remplacer List par Array.

Donc tout va bien

Merci
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Répondre

Revenir vers « (C#) CSharp »