Ruby - разница между Array # << и Array # push
Из изучения документации для Ruby 1.9.3 оба Array # & lt; & lt; и Array # push были разработаны для добавления элемента в конец текущего массива. Тем не менее, кажется, что есть тонкие различия между ними.
Я столкнулся с тем, что оператор * можно использовать для добавления содержимого всего другого массива к текущему, но только с помощью #push.
<code>a = [1,2,3] b = [4,5,6] a.push *b => [1,2,3,4,5,6] </code>
Попытка использовать # & lt; & lt; вместо этого выдает различные ошибки в зависимости от того, используется ли он с оператором точки и / или круглыми скобками.
Почему # & lt; & lt; не работает так же, как #push? Разве одно не является псевдонимом другого?