Al examinar la documentación de Ruby 1.9.3, tanto Array # < < como Array # push fueron diseñados para implementar la adición de un elemento al final de la matriz actual. Sin embargo, parece haber diferencias sutiles entre los dos.Ruby - Diferencia entre Array # << y Array # push
El que he encontrado es que el operador * se puede usar para agregar el contenido de una matriz completa a la actual, pero solo con #push.
a = [1,2,3]
b = [4,5,6]
a.push *b
=> [1,2,3,4,5,6]
El intento de utilizar # < < vez da varios errores, dependiendo de si se utiliza con el operador punto y/o paréntesis.
¿Por qué # < < no funciona de la misma manera que #push? ¿Uno no es realmente un alias para el otro?
comparar esto para agregar vs extender en python http: // stackoverflow.com/questions/252703 – dreftymac