Array.empty的相反方法是什么? 或 .empty? 在ruby

我意识到我可以做到

unless [1].empty? 

但是我想知道是否有方法?

以及#any? 正如davidrac提到的那样, ActiveSupport中有#present? 这更像是其他语言的真相testing。 对于nilfalse''{}[]等等,它返回false; 对于其他一切都是真实的(包括0,有趣)。

你可以使用[1].any? ,它实际上是在Enumerable中定义的

请注意,如果你的数组只包含nil或false值,这将不起作用(感谢评论@InternetSeriousBusiness)。

 [nil].any? => false [nil].any? {|something| true} => true [].any? {|something| true} => false [false, false].any? {|something| true} => true [nil, 'g'].any? {|something| true} => true 

检查数组中的元素:
.empty?
。当下?

如果a = {}
a.any? 。零?
会给你虚假的。

要检查字段是否具有非零值:

 .present? .nil? .any?