Cada matriz y hash en Ruby es un objeto, y cada objeto de estos tipos tiene un conjunto de métodos integrados. Los programadores nuevos en Ruby pueden aprender cómo usar el cada método con una matriz y un hash siguiendo los ejemplos simples presentados aquí.
Primero, cree un objeto de matriz asignando la matriz a "chiflados".
>> stooges = ['Larry', 'Curly', 'Moe']
Luego, llame a cada método y cree un pequeño bloque de código para procesar los resultados.
>> stooges.each | stooge | imprimir títere + "\ n"
Este código produce el siguiente resultado:
Larry
Rizado
Moe
Cada método toma dos argumentos: un elemento y un bloque. El elemento, contenido dentro de las tuberías, es similar a un marcador de posición. Lo que pones dentro de las tuberías se usa en el bloque para representar cada elemento de la matriz a su vez. El bloque es la línea de código que se ejecuta en cada uno de los elementos de la matriz y se le entrega el elemento para procesar.
Puede extender fácilmente el bloque de código a varias líneas utilizando hacer para definir un bloque más grande:
>> cosas. cada hacer | cosa |
cosa impresa
imprimir "\ n"
final
Esto es lo mismo que el primer ejemplo, excepto que el bloque se define como todo después del elemento (en tuberías) y antes de la declaración final.
Al igual que el objeto de matriz, el objeto hash tiene cada método que se puede usar para aplicar un bloque de código en cada elemento del hash. Primero, cree un objeto hash simple que contenga información de contacto:
>> contact_info = 'name' => 'Bob', 'phone' => '111-111-1111'
Luego, llame a cada método y cree un bloque de código de una sola línea para procesar e imprimir los resultados.
>> contact_info.each | clave, valor | tecla de impresión + '=' + valor + "\ n"
Esto produce el siguiente resultado:
nombre = Bob
teléfono = 111-111-1111
Esto funciona exactamente como cada método para un objeto de matriz con una diferencia crucial. Para un hash, crea dos elementos: uno para la clave hash y otro para el valor. Al igual que la matriz, estos elementos son marcadores de posición que se utilizan para pasar cada par clave / valor al bloque de código a medida que Ruby recorre el hash.
Puede extender fácilmente el bloque de código a varias líneas utilizando do para definir un bloque más grande:
>> contact_info.each do | clave, valor |
print print key + '=' + valor
imprimir "\ n"
final
Esto es lo mismo que el primer ejemplo de hash, excepto que el bloque se define como todo después de los elementos (en tuberías) y antes de la declaración final.