- Syntaxe 1 : Parcours des éléments du tableau
- Syntaxe 2 : Parcours des valeurs des éléments du tableau
Instruction POUR TOUT / POUR TOUS (parcours de tableaux associatifs) En anglais : FOR EACH / FOR ALL
L'instruction POUR TOUT permet d'effectuer différents types de parcours de tableaux associatifs : - Parcours des éléments du tableau associatif.
- Parcours des valeurs des éléments du tableau associatif.
Remarque : Les instructions POUR TOUT, POUR TOUS, POUR CHAQUE sont acceptées. Dans cette documentation, seule l'instruction POUR TOUT est utilisée et peut être remplacée par POUR TOUS ou POUR CHAQUE. L'instruction POUR TOUT peut également être utilisée pour parcourir les objets DotNet qui implémentent l'interface IEnumerable.
// Déclaration d'un tableau associatif d'entiers // Tableau indexé sur des chaînes et sans doublon taIDParClient est un tableau associatif d'entiers taIDParClient["A"] = 55 // Ajout de l'identifiant du client "A" taIDParClient["B"] = 321 // Ajout de l'identifiant du client "B" taIDParClient["A"] = 56 // Modification de l'identifiant du client "A" // Parcours de tous les identifiants (syntaxe 1) // 56 // 321 POUR TOUT nIdentifiant DE taIDParClient Trace(nIdentifiant) FIN
// Déclaration d'un tableau associatif d'entiers // Ce tableau est indexé sur des chaînes avec doublons // Ne tient pas compte de la casse ni des accents taIDParClient est un tableau associatif (AvecDoublon + ccSansCasse + ccSansAccent) d'entiers taIDParClient["E"] = 55 // ajout de l'identifiant du client "E" taIDParClient["B"] = 321 // ajout de l'identifiant du client "B" taIDParClient["e"] = 8 // ajout de l'identifiant du client "e" taIDParClient["é"] = 127 // ajout de l'identifiant du client "é" // Parcours de tous les identifiants des clients "E" (Syntaxe 2) // 55 // 8 // 127 POUR TOUT nIdentifiant DE taIDParClient = "E" Trace(nIdentifiant) FIN
Syntaxe
Parcours des éléments du tableau Masquer les détails
POUR TOUT [ELEMENT] <Variable> [, <Clé> [, <Compteur>]] DE <Tableau> [AVEC <Condition>] [<Sens>] ... FIN
<POUR TOUT [ELEMENT]> : Signale le début du bloc d'instructions. Le mot-clé ELEMENT est optionnel. <Variable> : Variable exactement du même type que les éléments du tableau. Pour des tableaux de classe, la variable doit être de type Classe dynamique. Il n'est pas nécessaire de déclarer cette variable.Note : Cette variable est une référence vers la valeur du tableau. Une modification de cette variable dans le POUR TOUT modifiera également la valeur dans le tableau associatif. <Clé> : Clé de l'élément parcouru. Il n'est pas nécessaire de déclarer cette variable. <Compteur> : Variable de type entier contenant le nombre d'itérations. Il n'est pas nécessaire de déclarer cette variable. <Tableau> : Tableau à parcourir. <Condition> :
<Sens> : Indicateur optionnel du sens de parcours. | | DepuisDébut (valeur par défaut) | Parcours le tableau dans l'ordre des ajouts dans le tableau. | DepuisFin | Parcours le tableau dans l'ordre inverse des ajouts dans le tableau. |
Parcours des valeurs des éléments <Clé> du tableau Masquer les détails
POUR TOUT [ELEMENT] <Variable> DE <Tableau> = <Clé> [AVEC <Condition>] [<Sens>] ... FIN
<POUR TOUT ELEMENT> : Signale le début du bloc d'instructions. Le mot-clé ELEMENT est optionnel. <Variable> : Variable exactement du même type que les éléments du tableau. Pour des tableaux de classe, la variable doit être de type Classe dynamique. Il n'est pas nécessaire de déclarer cette variable.Note : Cette variable est une référence vers la valeur du tableau. Une modification de cette variable dans le POUR TOUT modifiera également la valeur dans le tableau associatif. <Tableau> : Tableau à parcourir. <Clé> : Valeur de la clé pour laquelle les éléments du tableau doivent être parcourus. Pour un tableau associatif sans doublons, 0 ou 1 élément seront parcourus. Pour un tableau associatif avec doublons, 0 ou N éléments seront parcourus. <Condition> :
<Sens> : Indicateur optionnel du sens de parcours. | | DepuisDébut (valeur par défaut) | Parcours le tableau dans l'ordre des ajouts dans le tableau. | DepuisFin | Parcours le tableau dans l'ordre inverse des ajouts dans le tableau. |
Remarques Syntaxe 1 : Parcours des éléments du tableau A chaque itération, la variable <Variable> fait directement référence à l'élément courant dans le tableau. Si la valeur de <Variable> est modifiée, l'élément courant dans le tableau est modifié. En sortie de boucle (Fin normale ou instruction SORTIR), la valeur de <Variable> est affectée avec celle du dernier élément parcouru, mais <Variable> ne fait plus directement référence à l'élément dans le tableau. Exemple :
// Déclaration d'un tableau associatif d'entiers // Tableau indexé sur des chaînes et sans doublon taIDParClient est un tableau associatif d'entiers taIDParClient["A"] = 55 // Ajout de l'identifiant du client "A" taIDParClient["B"] = 321 // Ajout de l'identifiant du client "B" taIDParClient["A"] = 56 // Modification de l'identifiant du client "A" // Parcours de tous les identifiants // 56 // 321 POUR TOUT nIdentifiant DE taIDParClient Trace(nIdentifiant) FIN
Syntaxe 2 : Parcours des valeurs des éléments <Clé> du tableau Cette syntaxe parcourt tous les élément du tableau ayant la valeur <Clé> spécifiée. A chaque itération, la variable <Variable> fait directement référence à l'élément courant dans le tableau. Si la valeur de <Variable> est modifiée, l'élément courant dans le tableau est modifié. Cette syntaxe est utile dans le cas des parcours de tableaux associatifs avec doublons. En effet, dans un tableau associatif sans doublon, le nombre d'éléments parcourus peut être 0 ou 1. Dans un tableau associatif avec doublons, le nombre d'éléments parcourus peut être 0 ou N. Les éléments du tableaux sont parcourus dans l'ordre des ajouts (pas d'option de sens de parcours). En sortie de boucle (Fin normale ou instruction SORTIR), la valeur de <Variable> est affectée avec celle du dernier élément parcouru, mais <Variable> ne fait plus directement référence à l'élément dans le tableau. Exemple :
// Déclaration d'un tableau associatif d'entiers // Ce tableau est indexé sur des chaînes avec doublons // Ne tient pas compte de la casse ni des accents taIDParClient est un tableau associatif (AvecDoublon + ccSansCasse + ccSansAccent) d'entiers taIDParClient["E"] = 55 // ajout de l'identifiant du client "E" taIDParClient["B"] = 321 // ajout de l'identifiant du client "B" taIDParClient["e"] = 8 // ajout de l'identifiant du client "e" taIDParClient["é"] = 127 // ajout de l'identifiant du client "é" // Parcours de tous les identifiants des clients "E" // 55 // 8 // 127 POUR TOUT nIdentifiant DE taIDParClient = "E" Trace(nIdentifiant) FIN
Documentation également disponible pour…
|
|
|
|