Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 从另一个数组中删除数组元素_Ruby On Rails_Ruby_Arrays_Optimization - Fatal编程技术网

Ruby on rails 从另一个数组中删除数组元素

Ruby on rails 从另一个数组中删除数组元素,ruby-on-rails,ruby,arrays,optimization,Ruby On Rails,Ruby,Arrays,Optimization,我得到了2个数组: a = [1,2,3,4,5] b = [4,5,6,7,8] 我想删除a中的每个b元素,以便a具有[1,2,3] 当然,我的实际数组是不同的 我想用一个简单的方法得到一个漂亮的答案,因为我可以通过使用这个循环来解决这个问题,但我觉得它很难看 b.each do |e| a.delete(e) if a.include?(e) end return a 看来,拒绝可能是一个好办法,但找不到好办法。谢谢您只需使用以下操作:- 但是我建议,不要修改源数组。宁可 new_a

我得到了2个数组:

a = [1,2,3,4,5]
b = [4,5,6,7,8]
我想删除a中的每个b元素,以便a具有
[1,2,3]

当然,我的实际数组是不同的

我想用一个简单的方法得到一个漂亮的答案,因为我可以通过使用这个循环来解决这个问题,但我觉得它很难看

b.each do |e|
  a.delete(e) if a.include?(e)
end
return a
看来,
拒绝
可能是一个好办法,但找不到好办法。谢谢您

只需使用以下操作:-

但是我建议,不要修改源数组。宁可

new_ary = a - b

美丽的!谢谢,接受;请顺便告诉我如何使用
reject
方法(这里可以使用吗)?@sidney您可以使用-a.reject{e | b.include?(e)。。但是
Array#-
非常适合这样做。做
a-b
来得到你想要的。
new_ary = a - b