Ruby Language Itérer sur des objets complexes


Exemple

Tableaux

Vous pouvez itérer sur les tableaux imbriqués:

[[1, 2], [3, 4]].each { |(a, b)| p "a: #{ a }", "b: #{ b }" }

La syntaxe suivante est également autorisée:

[[1, 2], [3, 4]].each { |a, b| "a: #{ a }", "b: #{ b }" }

Produira:

"a: 1"
"b: 2"
"a: 3"
"b: 4"

Hash

Vous pouvez parcourir les paires clé-valeur:

{a: 1, b: 2, c: 3}.each { |pair| p "pair: #{ pair }" }

Produira:

"pair: [:a, 1]"
"pair: [:b, 2]"
"pair: [:c, 3]"

Vous pouvez itérer simultanément les clés et les valeurs:

{a: 1, b: 2, c: 3}.each { |(k, v)| p "k: #{ k }", "v: #{ k }" }

Produira:

"k: a"
"v: a"
"k: b"
"v: b"
"k: c"
"v: c"