如何确定所有数组元素是否符合某些条件?

时间:2012-10-30 14:12:04

标签: ruby

我有一个大数组,我需要知道它的所有元素是否都可以被2整除。

我这样做,但它有点难看:

_true = true
arr.each { |e| (e % 2).zero? || _true = false }
if _true == true
    # ...
end

如何在没有额外循环/分配的情况下执行此操作?

2 个答案:

答案 0 :(得分:21)

这样做。

arr.all?(&:even?)

答案 1 :(得分:13)

Ruby让你满意。

if arr.all? {|e| (e % 2).zero?}

如果您需要检查至少有一个元素是否具有给定属性,还有any?