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 :
def 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 !