数组返回子集

时间:2012-02-24 03:38:20

标签: ruby

这是我正在处理的脚本的一部分,它肯定会返回并返回数组,但我希望结果位于[[:a, :c].to_set,[:b,:c].to_set].to_set而不是[[:c, :b], [:c, :a]]

@potentially_alive = Array.new
if (self_defended?(s))
    @potentially_alive.delete_if { |pa| pa.subset?(s.to_set)}
    @potentially_alive.push(s.to_set)
end

1 个答案:

答案 0 :(得分:0)

如果您当前的结果是 [[:a, :c], [:b, :c]]

并且您想将其更改为 [[:a, :c].to_set, [:b, :c].to_set]

您可以执行以下操作(如果@potentially_alive = [[:a, :c], [:b, :c]]):

@potentially_alive.map! { |a| a.to_set } 要么 @potentially_alive = @potentially_alive.map { |a| a.to_set }