Considere el siguiente código:Ruby - saltos de línea y los operadores
x = 4
y = 5
z = (y + x)
puts z
Como era de esperar, la salida es 9
. Si se introduce una nueva línea:
x = 4
y = 5
z = y
+ x
puts z
A continuación se da salida a 5
. Esto tiene sentido, porque se interpreta como dos instrucciones separadas (z = y
y +x
).
Sin embargo, no entiendo cómo funciona cuando se tiene una nueva línea entre paréntesis:
x = 4
y = 5
z = (y
+ x)
puts z
La salida es 4
. ¿Por qué?
+1. Estaba tratando de explicar el concepto básico de comandos sin terminar cuando me di cuenta de que la salida era 4, no 9. Buena idea :) – Matchu
Eso tiene mucho sentido. Venía del mismo ejemplo en Scala donde lo trata como z = (y + x) y muestra 9. Buena explicación :-) – mopoke
Los paréntesis de líneas múltiples son esencialmente un bloque, y el valor del bloque es la última instrucción en él. – kejadlen