Les collections
Une collection est un objet qui permet de rassembler d'autres objets. Il existe pour l'instant deux types de collections qui sont directement implémentés par Sqript : les tableaux et les dictionnaires.
Les tableaux¶
Un tableau est une variable qui contient d'autres variables.
Les tableaux ont une taille infinie (limitée par la RAM), et peuvent contenir n'importe quels types de variables. Un tableau peut tout à fait contenir à la fois des chaînes de caractères, des nombres, voire d'autres tableaux. Une instance de TypeArray s'obtient facilement en notant entre crochets, séparés d'une virgule, les éléments qui composent notre tableau. Il est possible de créer un tableau vide en notant deux crochets vides []
.
Il est ensuite possible de récupérer un élément à un indice particulier en notant la variable, suivie de deux crochets contenant une expression retournant un TypeNumber :
set {array} to [true, "test", 5, sqrt(36)]
print {array}[3] //Output : 6
print {array}[7-(3*2)] //Output : "test"
Warning
Les indices des tableaux commencent à partir de 0.
On peut ajouter ou retirer des éléments à un tableau grâce aux actions add to
et remove from
:
set {tableau} to [1,2,3]
add 4 to {tableau}
print {tableau} #Affiche [1,2,3,4]
remove 2 from {tableau}
print {tableau} #Affiche [1,3,4]
Il est possible d'utiliser les opérateurs +
et -
sur les tableaux pour désigner l'ajout d'un élément au tableau, ou la suppression d'un élément du tableau, sans changer directement les éléments du tableau.
set {tableau} to [1,2,3]
print {tableau}+4 #Affiche [1,2,3,4]
print {tableau} #Affiche 1,2,3 - La valeur du tableau n'a pas été intrinsèquement changée
Les dictionnaires¶
Un dictionnaire est un tableau spécial, qui associe à chaque clé une valeur.
Pour définir un dictionnaire, on peut directement créer un dictionnaire vide avec dictionnary
ou créer le dictionnaire avec des couples clé-valeur prédéfinis par un tableau de tableaux, comme suit :
set {mon_dictionnaire_vide} to dictionnary
set {mon_dictionnaire} to dictionnary with [ ["clé 1",14] , ["clé 2",15] ]
De la même manière que pour les tableaux, on peut récupérer une valeur en notant entre crochet la clé associée à la valeur souhaitée directement après le dictionnaire :
set {mon_dictionnaire} to dictionnary with [ ["clé 1",14] , ["clé 2",15] ]
print {mon_dictionnaire}["clé 2"] #Affiche 15
Tout comme les tableaux, il est possible d'ajouter un couple de valeurs au dictionnaire avec l'action add
ou, sans modifier le dictionnaire, l'opérateur +
:
set {mon_dictionnaire_vide} to dictionnary
add ["clé","valeur"] to {mon_dictionnaire_vide}
print {mon_dictionnaire_vide}["clé"] #Affiche "valeur"
Il est aussi possible de retirer un élément du dictionnaire en utilisant l'action remove
ou, sans modifier le dictionnaire, avec l'opérateur -
, avec la clé du couple que l'on veut retirer :
set {mon_dictionnaire} to dictionnary with [ ["clé 1",14] , ["clé 2",15] ]
remove "clé 1" from {mon_dictionnaire}
print {mon_dictionnaire} #Affiche [ ["clé 2",15] ]
Danger
C'est bien la clé qui permet de supprimer un couple !