Equivalente de "continuar" en Ruby
keyword continue (6)
Creo que se llama a next .
En C y en muchos otros idiomas, hay una palabra clave de continue
que, cuando se usa dentro de un bucle, salta a la siguiente iteración del bucle. ¿Hay algún equivalente de esta palabra clave continue
en Ruby?
Escribiendo la respuesta de Ian Purton de una manera un poco más idiomática:
(1..5).each do |x|
next if x < 2
puts x
end
Huellas dactilares:
2
3
4
5
Los métodos de bucles internos e iteradores como each
y map
la next
palabra clave en ruby tendrán el efecto de saltar a la siguiente iteración del bucle (igual que continue
en C).
Sin embargo, lo que realmente hace es regresar del bloque actual. Así que puedes usarlo con cualquier método que tome un bloque, incluso si no tiene nada que ver con la iteración.
Ruby tiene otras dos palabras clave de control de bucle / iteración: redo
y retry
. Lea más sobre ellos y la diferencia entre ellos en Ruby QuickTips .
Sí, se llama a next
.
for i in 0..5
if i < 2
next
end
puts "Value of local variable is #{i}"
end
Esto da como resultado lo siguiente:
Value of local variable is 2
Value of local variable is 3
Value of local variable is 4
Value of local variable is 5
=> 0..5
next
También, mira redo
que rehace la iteración actual .