在Ruby中通过索引从数组中删除多个元素

时间:2017-04-12 07:03:12

标签: arrays ruby

我有一个数组。例如,

x = [1,2,3,4,5]

我知道命令

x.delete_at(i)

将从数组中删除索引 i 处的元素。但是从我所读过的内容来看,它只能处理一个论点。

我们假设我有一个变量来存储我希望从 x 中删除的索引。例如,

y = [0,2,3]

我的问题:是否可以使用另一个存储在您要删除的索引中的数组从数组中删除多个元素?

本质上,像

x.delete_at(y)

谢谢! :)

1 个答案:

答案 0 :(得分:3)

您可以将rejectwith_index

一起使用
x.reject.with_index { |e, i| y.include? i } #=> [2, 5]