我正在使用 Ruby 2.4 版本,如何检查我的数组中的所有元素是否满足某个条件? 我有以下代码:
cond = true
arr.each do |e|
if e.nil? || e.to_i < 5
cond = false
break
end
end
但我觉得有更有效率的方法来完成这个任务。
我正在使用 Ruby 2.4 版本,如何检查我的数组中的所有元素是否满足某个条件? 我有以下代码:
cond = true
arr.each do |e|
if e.nil? || e.to_i < 5
cond = false
break
end
end
但我觉得有更有效率的方法来完成这个任务。
arr
是任何对象obj
的数组,其中可能包括nil
,并且您以方法m
的形式获得了一个条件,该方法以obj
作为参数并返回true
或false
。那么您可以编写arr.all? { |obj| !obj.nil? && m(obj) }
。这个评论也适用于其他答案。 - Cary Swoveland