sid*_*ney 2 ruby arrays optimization ruby-on-rails
我有2个阵列:
a = [1,2,3,4,5]
b = [4,5,6,7,8]
Run Code Online (Sandbox Code Playgroud)
我想删除a中的每个b元素,以便拥有[1,2,3]
当然,我的真实阵列是不同的.
我想用一个简单的方法得到一个漂亮的答案,因为我可以通过使用这个循环解决这个问题,但我发现它很难看.
b.each do |e|
a.delete(e) if a.include?(e)
end
return a
Run Code Online (Sandbox Code Playgroud)
似乎reject可能是要走的路,但找不到好方法.谢谢
只需按照以下方式使用Array Difference: -
a = [1,2,3,4,5]
b = [4,5,6,7,8]
a = a - b
a # => [1,2,3]
Run Code Online (Sandbox Code Playgroud)
但我建议,不要修改源数组.相反
new_ary = a - b
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |