Difference between revisions of "Category:LSL List/fr"
m |
|||
Line 2: | Line 2: | ||
{{LSL Header/fr}} | {{LSL Header/fr}} | ||
Une liste est un type de | Une liste est un type de donnée spécial qui peut contenir zéro ou plus éléments de n'importe quel autre type de données. | ||
Les listes sont notées au moyen de crochets encadrant leurs éléments, lesquels sont séparés par des virgules. | Les listes sont notées au moyen de crochets encadrant leurs éléments, lesquels sont séparés par des virgules. | ||
Exemples de listes : | Exemples de listes : | ||
< | <lsl>[0, 1, 2, 3, 4] | ||
["Oui", "Non", "Peut-être"] | ["Oui", "Non", "Peut-être"]</lsl> | ||
[1, 14.154, "C'est sympa, | |||
(Nota bene : pour les habitués d'autres langages de programmation, il n'y a pas de tableaux 'ARRAY' en LSL, seulement des listes 'LIST') | |||
'''Types de données variés''' | |||
Il n'est pas obligatoire que tous les éléments d'une liste soient du même type. Dans une même liste, vous pouvez stocker des chaînes de caractères (string), des entiers (integer), des nombres à virgule (float), des vecteurs (vector), etc. | |||
Exemple: //une liste avec un entier, un nombre à virgule, une chaîne de caractères et un vecteur. | |||
<lsl>[1,14.154,"C'est sympa non ?",<0,0,0>]</lsl> | |||
Par contre, une liste ne peut contenir une autre liste (vous ne pouvez pas imbriquer des listes). | |||
<lsl>[1, "un", 2, "deux"] + [3, "trois"] renvoie [1, "un", 2, "deux", 3, "trois"]</lsl> | |||
et non pas : | |||
<lsl>[1, "un", 2, "deux", [3, "trois"]]</lsl> | |||
Quand vous ajoutez un élément à une liste, la liste mémorise automatiquement quel est le type de donnée de la valeur ajoutée. | |||
Habituellement, étant celui (ou celle) qui ajoute des éléments à une liste, vous savez le type de chaque élément dans la liste, et vous pouvez récupérer un élément avec la fonction appropriée llList2<type> telle que : [[llList2String/fr|llList2String]], [[llList2Vector/fr|llList2Vector]], etc. (plus de détail plus loin dans cet article.) | |||
Si besoin, pour retrouver le type de donnée d'un élément d'une liste, vous pouvez utiliser la fonction [[llGetListEntryType/fr|llGetListEntryType]]. | |||
Astuce ! Pour ajouter un nombre à virgule ([[float/fr|float]]) dans une une liste, utilisez toujours le séparateur décimal . (1.0 et non pas 1) pour vous assurer qu'il sera bien enregistré comme nombre à virgule et non pas comme entier. | |||
Une liste peut être directement transposée en chaîne de caractères (notion de cast) | |||
<lsl>default | |||
{ | |||
touch_start(integer total_number) | |||
{ | |||
list a = ["abc",1,2,3.14,<0,0,0>]; | |||
llOwnerSay((string)a); // renvoie : abc123.140000<0.000000, 0.000000, 0.000000> | |||
} | |||
}</lsl> | |||
(A suivre ...) | |||
Une liste peut grandir dynamiquement autant que l'on le souhaite au cours de l'exécution, dans la limite de la mémoire disponible du script. Néanmoins, il y a une limite de 72 éléments aux listes définies au moment de la compilation. | Une liste peut grandir dynamiquement autant que l'on le souhaite au cours de l'exécution, dans la limite de la mémoire disponible du script. Néanmoins, il y a une limite de 72 éléments aux listes définies au moment de la compilation. | ||
Il est important de remarquer que la numérotation des éléments de la liste démarre à 0, pas à 1. | Il est important de remarquer que la numérotation des éléments de la liste démarre à 0, pas à 1. | ||
Revision as of 15:15, 23 March 2009
LSL Portail Francophone | LSL Portail Anglophone | Fonctions | Évènements | Types | Operateurs | Constantes | Contrôle d'exécution | Bibliothèque | Tutoriels |
Une liste est un type de donnée spécial qui peut contenir zéro ou plus éléments de n'importe quel autre type de données.
Les listes sont notées au moyen de crochets encadrant leurs éléments, lesquels sont séparés par des virgules.
Exemples de listes : <lsl>[0, 1, 2, 3, 4] ["Oui", "Non", "Peut-être"]</lsl>
(Nota bene : pour les habitués d'autres langages de programmation, il n'y a pas de tableaux 'ARRAY' en LSL, seulement des listes 'LIST')
Types de données variés
Il n'est pas obligatoire que tous les éléments d'une liste soient du même type. Dans une même liste, vous pouvez stocker des chaînes de caractères (string), des entiers (integer), des nombres à virgule (float), des vecteurs (vector), etc.
Exemple: //une liste avec un entier, un nombre à virgule, une chaîne de caractères et un vecteur. <lsl>[1,14.154,"C'est sympa non ?",<0,0,0>]</lsl> Par contre, une liste ne peut contenir une autre liste (vous ne pouvez pas imbriquer des listes). <lsl>[1, "un", 2, "deux"] + [3, "trois"] renvoie [1, "un", 2, "deux", 3, "trois"]</lsl> et non pas : <lsl>[1, "un", 2, "deux", [3, "trois"]]</lsl>
Quand vous ajoutez un élément à une liste, la liste mémorise automatiquement quel est le type de donnée de la valeur ajoutée.
Habituellement, étant celui (ou celle) qui ajoute des éléments à une liste, vous savez le type de chaque élément dans la liste, et vous pouvez récupérer un élément avec la fonction appropriée llList2<type> telle que : llList2String, llList2Vector, etc. (plus de détail plus loin dans cet article.)
Si besoin, pour retrouver le type de donnée d'un élément d'une liste, vous pouvez utiliser la fonction llGetListEntryType.
Astuce ! Pour ajouter un nombre à virgule (float) dans une une liste, utilisez toujours le séparateur décimal . (1.0 et non pas 1) pour vous assurer qu'il sera bien enregistré comme nombre à virgule et non pas comme entier.
Une liste peut être directement transposée en chaîne de caractères (notion de cast) <lsl>default {
touch_start(integer total_number) { list a = ["abc",1,2,3.14,<0,0,0>]; llOwnerSay((string)a); // renvoie : abc123.140000<0.000000, 0.000000, 0.000000> }
}</lsl>
(A suivre ...)
Une liste peut grandir dynamiquement autant que l'on le souhaite au cours de l'exécution, dans la limite de la mémoire disponible du script. Néanmoins, il y a une limite de 72 éléments aux listes définies au moment de la compilation.
Il est important de remarquer que la numérotation des éléments de la liste démarre à 0, pas à 1.
Pages in category "LSL List/fr"
The following 23 pages are in this category, out of 23 total.