首页 > 解决方案 > 哈希键和值

问题描述

我想知道你是否有任何更实用的使用键的方法,红宝石的价值。

我必须即兴创作才能访问和打印键RafaelRoberto同时打印它们的键和值

我的代码:

arr = Hash.new
arr["Rafael"] = []
arr["Roberto"] = []

listaProdutos = [
    "banana",
    "uva",
    "biscoito"
]

listaProdutos.each{ |i|
    arr["Rafael"] << {"Produto": i, "Quantidade": rand(1..9)}
    arr["Roberto"] << {"Produto": i, "Quantidade": rand(1..9)}
}

arr.each{ |k,lista|
    (0..arr.count).each do |i|
        puts "#{k} vai comprar #{arr[k][i][:Quantidade]} unidades de #{arr[k][i][:Produto]}"
    end
}

标签: ruby

解决方案


This:

arr.each{ |k,lista|
    (0..arr.count).each do |i|
        puts "#{k} vai comprar #{arr[k][i][:Quantidade]} unidades de #{arr[k][i][:Produto]}"
    end
}

Can we rewritten as:

arr.each do |k, lista|
  lista.each do |obj|
    puts "#{k} vai comprar #{obj[:Quantidade]} unidades de #{obj[:Produto]}"
  end
end

推荐阅读