Ruby 如何对数组的所有元素执行布尔运算并将结果混合在一起?
我想Ruby 如何对数组的所有元素执行布尔运算并将结果混合在一起?,ruby,Ruby,我想和或或数组中的所有元素,但需要一些控制,如通过哈希元素选择所示。以下是我希望实现的行为: a = [{:a => true}, {:a => false}] a.and_map{ |hash_element| hash_element[:a] } #=> false a.or_map{ |hash_element| hash_element[:a] } #=> true 在Ruby中有没有一种灵活、干净的方法可以做到这一点?您可以使用all?和any?: a =
和
或或
数组中的所有元素,但需要一些控制,如通过哈希元素选择所示。以下是我希望实现的行为:
a = [{:a => true}, {:a => false}]
a.and_map{ |hash_element| hash_element[:a] }
#=> false
a.or_map{ |hash_element| hash_element[:a] }
#=> true
在Ruby中有没有一种灵活、干净的方法可以做到这一点?您可以使用
all?
和any?
:
a = [{:a => true}, {:a => false}]
a.all?{ |elem| elem[:a] }
a.any?{ |elem| elem[:a] }
a = [{:a => true}, {:a => false }]
a.any? { |hash_element| hash_element[:a] }
#=> true
a.all? { |hash_element| hash_element[:a] }
#=> false