AD

¿Ya dominas lo básico? Un curso estructurado de Ruby es la vía rápida para dar el salto.

Ver cursos de Ruby en Udemy

Enlace de afiliado. No te cuesta nada extra.

💎Lecciones de Ruby
Lección 23 / 68

Transformar un array (map)

En esta lección crearás una lista nueva aplicando la misma operación a cada elemento.

map recorre el array, ejecuta el bloque con cada elemento y devuelve una lista nueva con los resultados. El original no se toca. Cuando el bloque cabe en una línea se escribe con llaves: { |n| n * 2 }.

El código de ejemplo duplica cada número de una lista.

La confusión habitual es entre map y each. each recorre y devuelve el array original: sirve para hacer algo con cada elemento (imprimir, guardar). map sirve para transformar. Si usas each y vas metiendo resultados en un array vacío que creaste antes, casi siempre lo que querías era un map, y queda en una línea.

Junto a select (quedarse con los que cumplen) y reduce (combinar todo en un valor), map forma el trío con el que se resuelve la mayoría del trabajo con colecciones. Encadenados —lista.select { ... }.map { ... }.sum— describen el proceso completo en una línea que se lee de izquierda a derecha.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Ruby directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)