Menu
Coddy logo textTech

Atajos de arrays

Parte de la sección Fundamentos del Journey de Ruby de Coddy — lección 64 de 88.

Ruby proporciona atajos convenientes para crear arreglos, especialmente cuando se trabaja con cadenas o números secuenciales. Estos atajos ahorran tiempo y hacen que tu código sea más limpio.

La sintaxis %w crea un array de cadenas sin necesidad de comillas o comas:

fruits = %w[apple banana cherry]
puts fruits  # Salida: apple, banana, cherry

Esto es equivalente a escribir ["apple", "banana", "cherry"] pero mucho más conciso. Cada palabra separada por un espacio se convierte en un elemento separado.

Para arrays de símbolos, utiliza %i:

statuses = %i[pending active completed]
puts statuses  # Salida: pending, active, completed

Para crear arreglos de números secuenciales, puedes convertir un rango en un arreglo usando to_a:

numbers = (1..5).to_a
puts numbers  # Salida: 1, 2, 3, 4, 5

También puedes usar el operador splat * dentro de los corchetes de un array:

countdown = [*5..10]
puts countdown  # Salida: 5, 6, 7, 8, 9, 10

Estos atajos son particularmente útiles cuando necesitas definir rápidamente una lista de valores conocidos sin el desorden visual de las comillas y las comas.

challenge icon

Desafío

Fácil

Lee dos entradas:

  1. Una sola línea de palabras separadas por espacios (por ejemplo, red green blue yellow)
  2. Dos números enteros separados por una coma que representan un rango (por ejemplo, 3,7)

Realiza las siguientes tareas:

  1. Crea un arreglo de cadenas a partir de la primera entrada utilizando el método split. Dado que la entrada ya es una cadena, primero deberás usar split para convertirla en un arreglo, y luego demostrar el uso de %w creando un arreglo separado con las palabras alpha, beta, gamma.
  2. Crea un arreglo de símbolos usando %i con los valores start, middle, end.
  3. Crea un arreglo de números secuenciales a partir del rango proporcionado en la segunda entrada utilizando el operador splat * dentro de corchetes de arreglo.

Imprime lo siguiente en líneas separadas:

  1. Cada elemento del arreglo de palabras de entrada
  2. Una línea en blanco
  3. Cada elemento del arreglo %w (alpha, beta, gamma)
  4. Una línea en blanco
  5. Cada elemento del arreglo de símbolos %i
  6. Una línea en blanco
  7. Cada elemento del arreglo del rango de números

Por ejemplo, si las entradas son red green blue y 1,5, la salida debería ser:

red
green
blue

alpha
beta
gamma

start
middle
end

1
2
3
4
5

Si las entradas son sun moon star y 10,13, la salida debería ser:

sun
moon
star

alpha
beta
gamma

start
middle
end

10
11
12
13

Hoja de referencia

Ruby proporciona atajos para crear arreglos que hacen que el código sea más limpio y conciso.

La sintaxis %w crea un arreglo de cadenas sin comillas ni comas:

fruits = %w[apple banana cherry]
# Equivalente a ["apple", "banana", "cherry"]

La sintaxis %i crea un arreglo de símbolos:

statuses = %i[pending active completed]
# Equivalente a [:pending, :active, :completed]

Convierte un rango en un arreglo usando to_a:

numbers = (1..5).to_a
# Crea [1, 2, 3, 4, 5]

Usa el operador splat * dentro de corchetes de arreglo para crear arreglos a partir de rangos:

countdown = [*5..10]
# Crea [5, 6, 7, 8, 9, 10]

Pruébalo tú mismo

# Leer las palabras separadas por espacios
words_input = gets.chomp

# Leer el rango (dos enteros separados por coma)
range_input = gets.chomp

# TODO: Escribe tu código a continuación
# 1. Crear un array a partir de words_input usando split
# 2. Crear un array %w con alpha, beta, gamma
# 3. Crear un array %i con start, middle, end
# 4. Analizar el rango y crear un array usando el operador splat (*)

# Mostrar los elementos de cada array en líneas separadas con líneas en blanco entre los arrays
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos