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 47 / 68

Métodos que devuelven varios valores

En esta lección devolverás dos resultados de un mismo método.

En realidad Ruby devuelve un solo valor: un array. Lo que hace que parezcan dos es la asignación múltiple, que reparte los elementos entre varias variables: menor, mayor = min_max(lista).

El código de ejemplo obtiene el mínimo y el máximo de una lista de una sola llamada.

Si el número de variables no coincide con el de elementos, Ruby no protesta: las que sobran quedan en nil y los valores que sobran se descartan. Es cómodo y hace que un cambio en el método —añadir un tercer valor de vuelta— pase desapercibido hasta que algo falla lejos de allí.

Por eso, en cuanto son tres o más valores, o cuando no hay un orden natural entre ellos, es mejor devolver un hash con nombres: { min: ..., max: ... }. Quien lo lee no tiene que recordar el orden, y añadir una clave nueva no rompe a nadie.

📖 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)