Ruby 添加到哈希表中的值
我试图将散列中的值增加1。我的逻辑似乎是正确的,但由于某种原因,哈希中的值没有增加1Ruby 添加到哈希表中的值,ruby,hash,Ruby,Hash,我试图将散列中的值增加1。我的逻辑似乎是正确的,但由于某种原因,哈希中的值没有增加1 puts item_sold temp = sales_hash.values[item_sold] + 1 sales_hash.values[item_sold] = temp puts sales_hash.values[item_sold] sales\u hash是一个散列,其中键是1000-2000之间的数字,每个键的值从0开始已售出的商品是一个介于1和15之间的随机数。散列中有1
puts item_sold
temp = sales_hash.values[item_sold] + 1
sales_hash.values[item_sold] = temp
puts sales_hash.values[item_sold]
sales\u hash
是一个散列,其中键是1000-2000之间的数字,每个键的值从0开始<代码>已售出的商品是一个介于1和15之间的随机数。散列中有15项。当temp
打印出来时,它是一个值。但是,当我打印出sales\u hash.values[item\u saled]
的值时,它会打印0。什么是sales\u hash.values[item\u saled]
不递增?返回所有hash值的数组。您想添加一个值,您可以这样做:
item_sold
=> {0=>0, 1=>0, 2=>0}
item_sold[0] += 1
=> 1
item_sold
=> {0=>1, 1=>0, 2=>0}
您可以使用
hash[key]
语法访问散列值。如果item\u selled
是散列,则不能将其作为数组索引。