首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在数组中查找第一个非Nil元素

在数组中查找第一个非Nil元素
EN

Stack Overflow用户
提问于 2013-08-26 16:08:01
回答 4查看 10.2K关注 0票数 5

我有这样的代码:

代码语言:javascript
运行
复制
default_group_id =  @group_list[0].list[0].name

但是有时@group_list[0]的列表成员是空的,所以我的代码会崩溃:),所以我需要找到它的列表成员不是零的第一个@group_list[i],并使用它。我们怎么能这么做?

结构如下:

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-08-26 16:10:23

您可以使用Enumerable#find

代码语言:javascript
运行
复制
@group_list.find { |x| !x["list"].blank? }
#=> first non-nil and non-empty list in group_list
票数 10
EN

Stack Overflow用户

发布于 2016-10-06 19:40:57

具有传递Enumerable#findObject#itself是一个方便的快捷方式:

代码语言:javascript
运行
复制
@group_list.find(&:itself)
票数 21
EN

Stack Overflow用户

发布于 2013-08-26 16:12:21

你可以用Enumerable#find

代码语言:javascript
运行
复制
@group_list.find{|x|!x.nil?} # => the first non-nil element in @group_list
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18448331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档