【发布时间】:2014-02-02 03:21:52
【问题描述】:
我正在寻找一种将一个数组移动到另一个数组并清空它的方法。在这个例子中:
a1 = [1,2]
a2 = [3,4]
我想将 a2 添加到 a1,然后将 a2 添加为空。我希望结果看起来像:
a1 # => [1, 2, 3, 4]
a2 # => []
数组的大小可以不同,所以我需要一些不是特定于一个元素的东西,比如 push/pop/shift/unshift。或者也许我没有正确使用这些。我做了以下,但想知道是否有更好的方法:
a1.concat(a2)
a2.clear
a1 # => [1, 2, 3, 4]
a2 # => [3, 4]
【问题讨论】:
-
糟糕,我写了一个答案(现已删除),然后才意识到这正是您已经尝试过的。老实说,我认为这是最简单的方法——在第二行使用
#clear。 -
感谢大家的 cmets 和解决方案。我对这个网站很陌生。我不想因为提出这个问题而受到惩罚……但我不明白为什么我的问题被否决为“-1”。再次感谢您的所有帮助!
-
谁知道为什么有人反对它。对我来说似乎是一个合理的问题。我投票赞成补偿。 :-)
-
顺便说一句,我在删除的答案中写的是“如果
a2.clear返回了清空的元素,那将是一个简单的单行。但它没有,所以我会分两次做。我认为你所做的比使用slice!的解决方案更干净,即使它需要额外的一行。 -
Kal - 感谢您的评论和投票!我在发布之前阅读了所有规则,并试图在我的问题中格外小心。我只是想确保我没有无意中违反规则。再次感谢!