typestar

Asignación múltiple en Ruby

Desempacar arreglos en variables: intercambios, splats y pares anidados.

first, second = [10, 20]
puts first + second

first, second = second, first
puts "#{first}, #{second}"

head, *rest = [1, 2, 3, 4]
puts head
puts rest.inspect

# los parámetros del bloque desestructuran los pares por sí solos
pairs = [["a", 1], ["b", 2]]
pairs.each { |letter, n| puts "#{letter}=#{n}" }

(low, high), label = [[1, 9], "range"]
puts "#{label}: #{low}-#{high}"

Cómo funciona

  1. La asignación paralela desempaca un arreglo; intercambiar no necesita temporal.
  2. head, *rest separa una lista en su primer elemento y el resto.
  3. Los parámetros de bloque desestructuran pares sin sintaxis extra.
  4. Los paréntesis alcanzan los arreglos anidados durante la asignación.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
16
Caracteres a escribir
375
Tokens
123
Ritmo de tres estrellas
80 tpm

Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 92 segundos.

Escribe este fragmento

Paso 2 de 3 en Nil y modismos; paso 23 de 29 en Fundamentos del lenguaje.

← Anterior Siguiente →