很久以前我在Ruby中看到了这个技巧.而不是做(例如)
if array1.empty? and array2.empty? and array3.empty?
您可以立即调用所有对象并在最后附加操作,有点像
if %w(array1 array2 array3).each { |a| a.empty? }
但我觉得它比那简单......或者,它可能就是那样.我真的不知道,但这就是为什么我有兴趣找到答案.谢谢.
if [array1, array2, array3].all? { |a| a.empty? }
我认为这就是你要找的东西
如果您使用的是Rails或Ruby 1.9,则可以使用Symbol#to_proc:
[array1, array2, array3].all?(&:empty?)