加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 创建哈希迭代一个对象数组

发布时间:2020-12-16 20:40:00 所属栏目:百科 来源:网络整理
导读:我有一个具有属性名称和数据的对象等等.我想创建使用名称作为键和数据(这是一个数组)作为值的哈希值.我不知道如何使用地图减少下面的代码.可能吗? def fc_hash fcs = Hash.new self.forecasts.each do |fc| fcs[fc.name] = fc.data end fcsend 解决方法 使
我有一个具有属性名称和数据的对象等等.我想创建使用名称作为键和数据(这是一个数组)作为值的哈希值.我不知道如何使用地图减少下面的代码.可能吗?
def fc_hash
  fcs = Hash.new
  self.forecasts.each do |fc|
    fcs[fc.name] = fc.data
  end
  fcs
end

解决方法

使用 Hash[]
Forecast = Struct.new(:name,:data)
forecasts = [Forecast.new('bob',1),Forecast.new('mary',2)]
Hash[forecasts.map{|forecast| [forecast.name,forecast.data]}]
# => {"mary"=>2,"bob"=>1}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读