我想AND
或OR
数组中的所有元素,但需要一些控制,如通过散列元素选择所示。以下是我希望实现的行为:
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.any? { |hash_element| hash_element[:a] }
#=> true
a.all? { |hash_element| hash_element[:a] }
#=> false
a = [{:a => true}, {:a => false}]
a.all?{ |elem| elem[:a] }
a.any?{ |elem| elem[:a] }