是否有内置方法执行与Array#delete相同的功能但返回self?我想在不使用块且比an_ary.-([el])更清晰的情况下进行操作。

我可以猴子补丁一个,但似乎“紧凑的参数”方法将是一个相对普遍的愿望?

最佳答案

如果要变异原始数组(如delete),则可以使用以下选项:

ary.reject!{|e| e==42 }.something_else
ary.tap{|a| a.delete 42}.something_else
(ary.delete 42;ary).something_else
(ary-=[42]).something_else

如果要从以下位置链接新数组:
ary.reject{|e| e==42 }.something_else
(ary-[42]).something_else

关于ruby - Array#delete,但是返回数组?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5572411/

10-13 05:20