小编Rav*_*rag的帖子

Ruby - Array#<<和Array#push之间的区别

通过检查Ruby 1.9.3的文档,Array#<<和Array#push被设计为实现将元素附加到当前数组的末尾.但是,两者之间似乎存在微妙的差异.

我遇到的是*运算符可用于将整个其他数组的内容追加到当前数组,但只能使用#push.

a = [1,2,3]
b = [4,5,6]

a.push *b
=> [1,2,3,4,5,6]
Run Code Online (Sandbox Code Playgroud)

尝试使用#<<代替它会产生各种错误,具体取决于它是否与点运算符和/或括号一起使用.

为什么#<<不像#push那样工作?一个人实际上不是另一个的别名吗?

ruby arrays append

50
推荐指数
4
解决办法
3万
查看次数

标签 统计

append ×1

arrays ×1

ruby ×1