ruby – 从数组中删除匹配元素的第一个实例

说我有数组[1,2,3,1,2,3],我想删除(说)2的第一个实例给出[1,3,1,2,3]。什么是最简单的方法?
li.delete_at(li.index(n) || li.length)

li [li.length]超出范围,所以|| li.length处理n不在列表中的情况。

irb(main):001:0> li = [1,2,3,1,2,3]
=> [1, 2, 3, 1, 2, 3]
irb(main):002:0> li.delete_at(li.index(2) || li.length)
=> 2
irb(main):003:0> li.delete_at(li.index(42) || li.length)
=> nil
irb(main):004:0> li
=> [1, 3, 1, 2, 3]
http://stackoverflow.com/questions/4595305/delete-first-instance-of-matching-element-from-array

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:ruby – 从数组中删除匹配元素的第一个实例