Tableaux
Vous pouvez créer un tableau en énumérant divers éléments entre des crochets ( [ ] ), en les séparant par des virgules. Les tableaux de ruby peuvent contenir des objets de divers types.
ruby> tab = [1, 2, "3"]
[1, 2, "3"]
Les tableaux peuvent être concaténés ou répétés exactement comme des chaînes de caractères.
ruby> tab + ["foo", "bar"]
[1, 2, "3", "foo", "bar"]
ruby> tab * 2
[1, 2, "3", 1, 2, "3"]
On peut utiliser des indices pour se référer aux parties d’un tableau.
ruby> tab[0]
1
ruby> tab[0,2]
[1, 2]
ruby> tab[0..1]
[1, 2]
ruby> tab[-2]
2
ruby> tab[-2,2]
[2, "3"]
ruby> tab[-2..-1]
[2, "3"]
(Les indices négatifs indiquent des déplacements depuis la fin du tableau.)
Les tableaux peuvent être convertis depuis et vers des chaînes de caractères, en utilisant split et join respectivement :
ruby> chaine = ary.join(":")
"1:2:3"
ruby> chaine.split(":")
["1", "2", "3"]
Hashes (tableau associatif)
Un tableau associatif a des éléments auxquels on accède non plus par des indices numériques croissant séquentiellement, mais par des clés qui peuvent avoir n’importe quelle valeur. Ce type de tableau est parfois appelé hash ou dictionnaire; dans le monde ruby, on préfère le mot hash. Un hash peut être construit par des paires de valeurs entre accolades ( { } ). On utilise une clé pour trouver quelque chose dans un hash, de la même façon qu’un indice pour trouver quelque chose dans un tableau.
ruby> h = {1 => 2, "2" => "4"}
{1=>2, "2"=>"4"}
ruby> h[1]
2
ruby> h["2"]
"4"
ruby> h[5]
nil
ruby> h[5] = 10 # ajoute une valeur
10
ruby> h
{5=>10, 1=>2, "2"=>"4"}
ruby> h[1] = nil # supprime une valeur
nil
ruby> h[1]
nil
ruby> h
{5=>10, "2"=>"4"}
Précédent : GDU : Expressions régulières Suivant : GDU : Retour sur les exemples

