Previous: Boucles Up: Blocs et structures de contrôles
Une autre forme de contrôle est offerte par des itérateurs. Les itérateurs sont des messages envoyés à des objets appelés collections tels ques les listes, les tableaux, les dictionnaires, les ensembles que nous détaillerons au paragraphe .
Ces itérateurs évaluent un bloc avec un paramètre (parfois deux) pour chacun des objets de la collection.
___________________________________________
Exercice 21
Évaluez en inspectant les expressions suivantes :
#(1 2 3 4) do:[:i | Transcript show: i printString; cr]
#(1 2 3 4) collect: [:n | n@n]
(Set with: 1 with: 2 with: 3 with: 4) collect: [:n | n@n]
#(1 2 3 4) select:[:n | n even]
#(1 2 3 4) reject:[:n | n even]
'b??l?an???c' reject:[:carac | carac = $?]
'fin.' detect:[:c | c = $.]
'fin.' detect:[:c | c = $!] ifNone:[]
#(1 2 3 4) inject: 0 into:[:t :i | t + i]
___________________________________________