Ruby是否有适用于布尔值的数组求和方法?

22

Ruby允许你这样做

[5,5,5].sum
=> 15

有没有任何方法可以在数组上执行布尔运算,例如

[true, true, true].sum
=> true
[true, false, true].sum
=> false

目前使用的是![true,false,true].include?(false),但这不太容易阅读。 - biagidp
2
[5,5,5].sum 是 Rails(ActiveSupport)的方法,而不是纯 Ruby 的。 - steenslag
另一种方法(虽然 all? 是最好的):[true, true, true].reduce(:&) - Cary Swoveland
很好的观点 @steenslag。 - biagidp
1个回答

52
[true, true, true].all?

将返回true。

[true, false, true].all?

将返回false。

此外,如果您想要对值进行布尔“或”运算:

[true, false, true].any? 

返回 true。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接