2014-10-19 28 views
7

紅寶石讓你做ruby​​是否具有布爾值的數組求和方法?

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

有東西給數組做算術布爾像

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

當前正在使用![true,false,true] .include?(false)但這不太好理解。 – biagidp 2014-10-19 20:08:20

+2

'[5,5,5] .sum'是Rails(ActiveSupport),不是普通的Ruby。 – steenslag 2014-10-19 21:21:06

+0

另一種方法(儘管'all?'是最好的):'[true,true,true] .reduce(:&)'。 – 2014-10-19 21:56:43

回答

19
[true, true, true].all? 

將返回true。

[true, false, true].all? 

將返回false。

此外,如果你想布爾OR值:

[true, false, true].any? 

返回true。