我有两个长度和格式相同的数组。我正在寻找最短的方法来做这样的事情:
[[:todo],[],['text']].some_operation([[],[:low],[]])
->
[[:todo],[:low],['text']]
因为我希望删除重复项:
[[:todo],[],['text']].some_operation([[:todo],[:low],['text','more']])
->
[[:todo],[:low],['text','more']]
我有两个长度和格式相同的数组。我正在寻找最短的方法来做这样的事情:
[[:todo],[],['text']].some_operation([[],[:low],[]])
->
[[:todo],[:low],['text']]
因为我希望删除重复项:
[[:todo],[],['text']].some_operation([[:todo],[:low],['text','more']])
->
[[:todo],[:low],['text','more']]
如果你有 和 中的值a
,b
那么
a.zip(b).map { |aa, bb| (aa + bb).uniq }
如果你真的想把它放到Array
课堂上,你可以修改它(不是真的推荐,特别是对于这个特定的东西),或者改进它(新的,在旧版本中不起作用)。
你也可以做
a.each_with_index.map {|aa, i| aa | b[i] }
a.zip(b).map{|x|x.flatten.uniq}