将元素推到数组的开头的最简单的方法是什么?
我想不出一条线路来做到这一点。 有没有办法?
那么使用unshift
方法呢?
ary.unshift(obj, ...) → ary
在物体的前面预先放置物体,向上移动其他物体。
并在使用中:
irb>> a = [ 0, 1, 2] => [0, 1, 2] irb>> a.unshift('x') => ["x", 0, 1, 2] irb>> a.inspect => "["x", 0, 1, 2]"
你可以使用insert
:
a = [1,2,3] a.insert(0,'x') => ['x',1,2,3]
第一个参数是要插入的索引,第二个是值。
array = ["foo"] array.unshift "bar" array => ["bar", "foo"]
被警告,这是破坏性的!
你也可以使用数组连接 :
a = [2, 3] [1] + a => [1, 2, 3]
这会创build一个新的数组,不会修改原始数组。
您可以使用methodsolver
来查找Ruby函数。
这是一个小脚本,
require 'methodsolver' solve { a = [1,2,3]; a.____(0) == [0,1,2,3] }
运行这个打印
Found 1 methods - Array#unshift
你可以使用安装methodsolver
gem install methodsolver