首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将数组拆分为子数组

将数组拆分为子数组
EN

Stack Overflow用户
提问于 2014-11-24 21:14:36
回答 2查看 288关注 0票数 1

我有一个散列数组,我想把它分解成一个子数组。

拆分的触发器是:group

代码语言:javascript
运行
复制
master = []
master << { id: 1, group: "Brown", name: "Fred" }
master << { id: 2, group: "Brown", name: "May" }
master << { id: 3, group: "Brown", name: "Brian" }
master << { id: 4, group: "Black", name: "Sue" }
master << { id: 5, group: "Orange", name: "Helen" }
master << { id: 6, group: "Orange", name: "Peter" }
master << { id: 7, group: "Red", name: "Grace" }
master << { id: 8, group: "Red", name: "Michael" }
master << { id: 9, group: "Red", name: "Paul" }

是否有一个快速的rails功能可以实现这一点,还是我需要使用控制中断类型循环,就像我几年前对Cobol做的那样.:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-24 22:04:56

您可能希望使用Enumerable.group_by函数对数据进行分组。

代码语言:javascript
运行
复制
master.group_by { |item| item[:group] }

这会产生

代码语言:javascript
运行
复制
{
  "Red" => [{ id: 7, group: "Red", name: "Grace" },...],
  "Black" => ...,
  ...
}
票数 2
EN

Stack Overflow用户

发布于 2014-11-24 21:39:36

master.group_by{|h| h[:group]}

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27114300

复制
相关文章

相似问题

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