我有这段代码:
default_group_id = @group_list[0].list[0].name
但有时候@group_list[0]
的列表成员是空的,所以我的代码崩溃了:)
所以我需要找到它的列表成员不是nil的第一个@group_list[i]
并使用它。
我们怎么做到这一点?
这是结构:
答案 0 :(得分:12)
Enumerable#find
的 Object#itself
是一个方便的快捷方式:
@group_list.find(&:itself)
答案 1 :(得分:8)
您可以使用Enumerable#find:
@group_list.find { |x| !x["list"].blank? }
#=> first non-nil and non-empty list in group_list
答案 2 :(得分:7)
您可以使用Enumerable#find
:
@group_list.find{|x|!x.nil?} # => the first non-nil element in @group_list