尝试使用ruby遍历数组,但是失败了,
My Array
people = [{first_name: "Gary", job_title: "car enthusiast", salary: "14000" },
{first_name: "Claire", job_title: "developer", salary: "15000"},
{first_name: "Clem", job_title: "developer", salary: "12000"}]
如何遍历以上哈希仅输出薪水值?
我尝试使用:
people.each do |i,j,k|
puts "#{i}"
end
结果如下,不是我想要的,
{:first_name=>"Gary", :job_title=>"car enthusiast", :salary=>"14000"}
{:first_name=>"Claire", :job_title=>"developer", :salary=>"15000"}
{:first_name=>"Clem", :job_title=>"developer", :salary=>"12000"}
有没有办法遍历此数组并仅列出薪水值而不列出其余值?
答案 0 :(得分:3)
在较新版本的Ruby中(不确定何时引入它,大概在ruby 2.0-ish左右(我相信是在引入关键字参数的时候)),您可以执行以下操作:
WHERE
其中people.each do |salary:,**|
puts salary
end
接受所有您未命名的关键字参数并将其吞并(即哈希中的**
和first_name
键)。如果那不是您的ruby版本所允许的,那么您只需要将整个哈希存储在变量中即可:
job_title