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? Разве одно не является псевдонимом другого?

Ответы на вопрос(5)

Ваш ответ на вопрос