Toda matriz e hash no Ruby é um objeto, e todo objeto desses tipos possui um conjunto de métodos internos. Os programadores iniciantes no Ruby podem aprender como usar o cada com uma matriz e um hash, seguindo os exemplos simples apresentados aqui.
Usando o método Each com um objeto Array em Ruby
Primeiro, crie um objeto de matriz atribuindo a matriz a "patetas".
>> patetas = ['Larry', 'Curly', 'Moe']
Em seguida, chame o método each e crie um pequeno bloco de código para processar os resultados.
>> stooges.each {| stooge | imprimir stooge + "\ n"}
Este código produz a seguinte saída:
Larry
Encaracolado
Moe
Cada método leva dois argumentos- um elemento e um bloco. O elemento, contido nos tubos, é semelhante a um espaço reservado. Tudo o que você coloca dentro dos tubos é usado no bloco para representar cada elemento da matriz por sua vez. O bloco é a linha de código que é executada em cada um dos itens da matriz e recebe o elemento a ser processado.
Você pode estender facilmente o bloco de código para várias linhas usando Faz para definir um bloco maior:
>> coisas.cada coisa |
coisa de impressão
imprimir "\ n"
fim
É o mesmo que no primeiro exemplo, exceto que o bloco é definido como tudo depois do elemento (em pipes) e antes da instrução final.
Usando o método Each com um objeto Hash
Assim como o objeto de matriz, a objeto hash possui um método each que pode ser usado para aplicar um bloco de código em cada item no hash. Primeiro, crie um objeto hash simples que contenha algumas informações de contato:
>> contact_info = {'name' => 'Bob', 'phone' => '111-111-1111'}
Em seguida, chame o método each e crie um bloco de código de linha única para processar e imprimir os resultados.
>> contact_info.each {| chave, valor | tecla de impressão + '=' + valor + "\ n"}
Isso produz a seguinte saída:
name = Bob
phone = 111-111-1111
Isso funciona exatamente como o método each para um objeto de matriz com uma diferença crucial. Para um hash, você cria dois elementos - um para o cerquilha chave e uma para o valor. Como a matriz, esses elementos são espaços reservados que são usados para passar cada par de chave / valor no bloco de código como Loops de rubi através do hash.
Você pode estender facilmente o bloco de código para várias linhas usando do para definir um bloco maior:
>> contact_info.each do | chave, valor |
print print key + '=' + valor
imprimir "\ n"
fim
É o mesmo que o primeiro exemplo de hash, exceto que o bloco é definido como tudo depois dos elementos (em pipes) e antes da instrução final.