ruby - 接受索引并返回一个新数组的数组方法,该数组删除了索引处的项目

标签 ruby arrays

'delete_at' 和 'slice' 删除索引处的项目并返回该项目。但是我真的不在乎删除的项目。我只想要一个删除了该项目的新数组。 Ruby 的 Array 类好像没有提供这样的方法。

例子是:

a = ['a','b','c','d']
b = a.remove(2) #b => ['a','b','d']

这里的“删除”是一个虚构的方法,它可以执行我想要的操作。我需要原始数组,所以我想要一个新的数组返回。我想知道 Ruby 是否已经有这样的内置功能?

最佳答案

class Array
  def remove(idx)
    self[0...idx] + self[idx+1..-1]
  end
end

关于ruby - 接受索引并返回一个新数组的数组方法,该数组删除了索引处的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7771414/

相关文章:

c - C 中的动态数组——我对 malloc 和 realloc 的理解正确吗?

ruby - 如何在公司代理后面的 Mac 上安装 Ruby gems?

java - 数组缺少元素

arrays - 当使用数组的哈希中存在不存在的元素时如何返回字符串

arrays - 圆形阵列切片

javascript - jquery for 循环有两种不同索引的方法

php - 根据数组值回显不同的图像

java - switch 中的所有情况都会执行,而只有一种情况应该被执行

ruby - 在 Mac OS X 上使用 Ruby,如何以编程方式点击屏幕——以及鼠标移动、鼠标按下和鼠标弹起?

Ruby - 调用方法将数组的值作为每个参数传递