标签: ruby enumerable
我有一个数组a。我想构建一个新的数组,其中挑选出一个或多个元素。生成的数组应如下所示:
a
[a[5], a[7], a[8]]
如何通过传递索引[5,7,8]数组来进行此选择?我想象的是:
[5,7,8]
b = a.select([5,7,8])
哪个不起作用; select需要一个块来评估。我可以枚举数组并手动选择,但我觉得这应该可以更优雅。
select
答案 0 :(得分:3)
使用Array#values_at。
Array#values_at
b = a.values_at(*[5,7,8])