Cuando se utiliza la notación de puntos triples en un objeto de rubí Rango, me sale esto:Ruby 'Range.last' no da el último valor. ¿Por qué?
(0...5).each{|n| p n}
0
1
2
3
4
Cuando utilizo el método de 'última' me sale:
(0...5).last
=> 5
lo que habría esperado 4
¿Esto es un error? ¿O hay algo que no entiendo sobre el concepto de un objeto Range?
Aquí es lo que usted no está entiende sobre objetos Rango: considerar la rango 'Matemáticas :: E ... Matemáticas :: PI'. ¿Qué debería 'durar' ser? Los rangos son literalmente solo un comienzo, un final y si el final está excluido o no. El hecho de que los rangos enteros puedan enumerarse es una característica especial. Los rangos tienen muchos otros usos. – Max
El rango tiene el método 'end' para eso, presioné. Me falta el método 'start' sin embargo. – Rempargo