0

现在我有一个名为 data 的双重哈希,如下所示:

data [name][action]

IE

 data = {"Mike" => {"Walked" => 13, "Ran" => 5}, "Steve" => {...}}

对于这个特定的哈希,我实际上并不知道哈希中的键,我只想迭代它,如下所示:

data.each |item| do
    #how to get the key name for item here?
    puts item["Walked"].to_s
    puts item["Ran"].to_s
end

我想获取密钥,以便可以在值旁边的表格中显示它。

4

2 回答 2

2

您可以使用以下方法迭代哈希:

data.each do |key, value|

end
于 2013-10-15T20:38:37.773 回答
1

您可以将每个与键、值语法一起使用,如each文档中所述:

data.each do |key, values|
  puts key.to_s
  values.each do |value|
    value.to_s
  end
end

您也可以使用keysvalues取决于您想要实现的目标。

data.keys.each do |key|
  puts key #lists all keys
end

data.values.each do |value|
  puts value #lists all values
end

data.keys.first #first key

等等。

于 2013-10-15T20:39:01.527 回答