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, cherryEsto 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, completedPara 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, 5También puedes usar el operador splat * dentro de los corchetes de un array:
countdown = [*5..10]
puts countdown # Salida: 5, 6, 7, 8, 9, 10Estos atajos son particularmente útiles cuando necesitas definir rápidamente una lista de valores conocidos sin el desorden visual de las comillas y las comas.
Desafío
FácilLee dos entradas:
- Una sola línea de palabras separadas por espacios (por ejemplo,
red green blue yellow) - Dos números enteros separados por una coma que representan un rango (por ejemplo,
3,7)
Realiza las siguientes tareas:
- 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 usarsplitpara convertirla en un arreglo, y luego demostrar el uso de%wcreando un arreglo separado con las palabrasalpha,beta,gamma. - Crea un arreglo de símbolos usando
%icon los valoresstart,middle,end. - 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:
- Cada elemento del arreglo de palabras de entrada
- Una línea en blanco
- Cada elemento del arreglo
%w(alpha, beta, gamma) - Una línea en blanco
- Cada elemento del arreglo de símbolos
%i - Una línea en blanco
- 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
5Si 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
13Prué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 arraysEsta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 3Operadores lógicos Parte 47Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario10FizzBuzz con un giro
Descripción general del juegoEl método FizzBuzz2Variables y tipos de datos
Números y variablesTipo de dato StringTipo de dato BooleanTipo de dato SymbolComprobación de tipos de datosConvenciones de nomenclaturaResumen: Creación de variables5Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleIf - Else anidadosSentencia Unless8Bucles
Bucle For con rangosBucle WhileBreakNextRepaso - FactorialBucle TimesBucle UntilBucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosOperador móduloAtajos aritméticosResumen - Matemáticas simplesOperadores de comparación6Entrada y Salida Básica
Salida con putsSalida con print y pSalida con variablesEntrada con getsMétodo chompConversión de tiposResumen - Calculadora de edadResumen - Verdadero o falsoPractica por tu cuenta: Compilador de Ruby online