a = if true
Caracteristicas:
- Posibilidad de encadenar expresiones.
- Contiene un paquete basico de operacion (+, , *, /, etc), estas operaciones son en realidad llamadas a metodos.
a.+(b)
- Como sabemos todo en ruby son objetos, luego se pueden redefinir operaciones, es decir, metodos- Podemos encadenar igualdades, cosa que en otros lenguajes no es posible, por ejemplo:
a = (b = 1 + 2) + 3
- Las igualdades se pueden hacer en lugares donde seria imposible en otros lenguajes, como por ejemplo dentro de un if, un while o en una llamada a un metodoAsignacion paralela:
- La simplicidad de ruby hace posible el intercambio de valores de variables, sin necesidad del uso de auxiliares:
a,b = b,a
- Cuando una asignación tiene mas de un valor izquierdo, la expresion de asignacion retorna un array de los valores derechos.- Si una asignación contiene mas valores izquierdos que derechos, los valores izquierdos excendentes contendran nil.
- Si una asignación mútiple contiene más valores derechos que izquierdos, los valores derechos sobrantes seran ignorados.
- Si el último valor izquierdo esta precedido por un asterisco, todos los valores derechos sobrantes seran asignados como un array, por ejemplo:
a = [1, 2, 3, 4]
b, *c = a » b == 1, c == [2, 3, 4]
b, *c = a » b == 1, c == [2, 3, 4]
Expresiones boleanas:
- Todo lo que no sea false o nil, es true
No hay comentarios:
Publicar un comentario