【发布时间】:2010-05-06 21:25:28
【问题描述】:
我有四个来自客户端的数组。假设有一系列名称、出生日期、最喜欢的颜色和位置。我的想法是稍后我想要一个散列,其中每个名称都有一个具有各自属性的散列:
来自客户的示例日期:
[name0, name1, name2, name3]
[loc0, loc1]
[favcololor0, favcolor1]
[bd0, bd1, bd2, bd3, bd4, bd5]
我想实现的输出:
name0 => { location => loc0, favcolor => favcolor0, bd => bd0 }
name1 => { location => loc1, favcolor => favcolor1, bd => bd1 }
name2 => { location => nil, favcolor => nil, bd => bd2 }
name3 => { location => nil, favcolor => nil, bd => bd3 }
我想在一天结束时有一个数组,我可以在其中迭代和处理每个特定的人哈希。
每个数组中的值不必相等。意思是,名字是必需的。我可能会收到其中的 5 个,但我可能只会收到 3 个出生日期、2 个最喜欢的颜色和 1 个位置。每个缺失值都将导致零。
如何使用 Ruby 1.9 制作这种数据结构?
【问题讨论】:
-
如果你有5个名字和2个颜色,你怎么知道哪些颜色属于哪些名字?
-
第 0 行中的所有内容都属于一个哈希,第一个元素位置中的所有内容都属于一起并向前。任何缺失值都会导致零。这可能是 zip 和其他一些花哨的 ruby 数组方法的工作。
标签: ruby