我有2个数组:
a = [1,2,3,4,5]
b = [4,5,6,7,8]
我想删除 a 中的每个 b 元素,以便拥有[1,2,3]
当然,我的真实阵列是不同的。
我想用一个简单的方法得到一个漂亮的答案,因为我可以通过使用这个循环解决这个问题,但我发现它很难看。
b.each do |e|
a.delete(e) if a.include?(e)
end
return a
似乎reject
可能是要走的路,但找不到好方法。谢谢你
答案 0 :(得分:6)
使用Array Difference
执行以下操作: -
a = [1,2,3,4,5]
b = [4,5,6,7,8]
a = a - b
a # => [1,2,3]
但我建议,不要修改源数组。而是
new_ary = a - b