Ruby Iteradores
En pocas palabras: iterar (iterate) significa hacer repetidamente lo mismo, por lo que un iterador (iterator) se utiliza para repetir lo mismo varias veces.
Los iteradores sonmétodos soportados porlas colecciones. Un objeto que almacena un conjunto de miembros de datos se llama colección. En Ruby, los arrays (Array) y hashes (Hash) pueden llamarse colecciones.
Los iteradores devuelven todos los elementos de la colección, uno tras otro. Aquí discutiremos dos tipos de iteradores,eachycollect。
Ruby eachIteradores
El iterador each devuelve todos los elementos de un array o hash.
Sintaxis
ParaDe la colección,cada elemento se ejecutacode. Aquí, la colección puede ser un array o un hash.
El resultado de ejecutar el ejemplo anterior es:
1 2 3 4 5
eachEl iterador siempre está asociado con un bloque. Devuelve al bloque cada valor del array, uno tras otro. El valor se almacena en la variableiy luego se muestra en la pantalla.
Ruby collectIterador
collectEl iterador devuelve todos los elementos de la colección.
Sintaxis
collectEl método no siempre necesita estar asociado con un bloque.collectEl método devuelve toda la colección, ya sea un array o un hash.
Ejemplo
El resultado de ejecutar el ejemplo anterior es:
1 2 3 4 5
Nota:collectEl método no es la forma correcta de copiar entre arrays. Aquí hay otro llamadoclonemétodo, utilizado para copiar un array a otro.
Cuando desea realizar alguna operación con cada valor para obtener un nuevo array, normalmente utiliza el método collect. Por ejemplo, el siguiente código generará un array cuyos valores son 10 veces cada valor en a.
El resultado de ejecutar el ejemplo anterior es:
10 20 30 40 50Otras extensiones